CAN通讯以其高波动性,被普遍使用在产业通讯、产业物九游会以及产业控制范畴。传统的设置装备摆设多数是串口通讯如RS485/RS232,这类设置装备摆设假如要接入CAN网络,一样平常必要CAN转换器。针对这种使用,智嵌物联ZQWL研收回了高波动高服从的CAN转串口/CAN转网络系列设置装备摆设,如CAN转串口系列有型号ZQWL-RCAN-1C311/1D311,CAN转网络系列有型号ZQWL-CANET-1C111/1C112等。
本文以ZQWL-RCAN-1C311为例介绍CAN与串口设置装备摆设的转换利用阐明。
一、硬件预备
为了测试1C311,必要以下硬件:
1C311一个;
DC5V 1A电源适配器一个;
串口线一个(假如意外RS232功效,可以不必);
串口(或USB)转RS485讨论一个(假如意外RS485功效,可以不必);
USB转CAN设置装备摆设一个(保举型号:ZQWL-UCAN-5C121);
1.1 透传测试
先用产品的默许参数来测试,默许参数如下:
1、RS232与CAN透传测试
用串口线将电脑和设置装备摆设的RS232口(DB9)毗连,毗连好usb转CAN调试器(第一次利用必要安置软件和驱动,细致利用办法请征询相干厂家),然后DC5V 1A电源适配器给设置装备摆设供电。
翻开串口调试助手,选择所用的串标语,并将串口的参数依照图1.2.2设置。设置好后翻开串口。
翻开usb转can调试软件,设置好波特率为250kbps:
图 1.2.2 RS232与CAN数据透传
颠末以上步调后,CAN与RS232就可以相互发数据了。
2、RS485与CAN透传测试
用串口(或USB)转RS485讨论将电脑和设置装备摆设的RS485口(绿色插头,A接A,B接B)毗连,毗连好usb转CAN调试器(第一次利用必要安置软件和驱动,细致利用办法请征询相干厂家),然后用DC5V 1A电源适配器给设置装备摆设供电。
测试办法和RS232与CAN透传完全一样。
二、功效简介
ZQWL-RCAN-1C311是一款玲珑风雅、高功能、高波动性的串口转CAN模块。它具有1路RS232接口、1路RS485接口和1路CAN接口。串口的波特率支持1200~460800bps;CAN的波特率支持10kbps~1000kbps。可以经过RS232/485 完成对设置装备摆设的固件晋级,利用十分利便。
用户使用它可以轻松完成串口设置装备摆设与CAN设置装备摆设的互联。
2.1 硬件特点
2.2 设置装备摆设特征
·完成CAN与RS232/485 的双向数据通讯;
·支持Modbus RTU协议转换;
·可以经过RS232/485 完成对设置装备摆设的固件晋级,利便定制固件;
·接口静电防护;浪涌防护;具有优秀的EMC功能;
·14组可设置的滤波器;
· 4种事情形式:通明转换、通明带标识转换、款式转换和Modbus RTU协议转换;
·具有离线检测和主动规复功效;
· 切合CAN 2.0B标准,兼容CAN 2.0A;切合ISO 11898-1/2/3。
· 波特率支持10kbps~1000kbps。
·CAN缓冲器达1000帧,包管数据不丧失;
· 高速转换,串口在115200波特率,CAN在250kbps下,CAN发送速率可达1270扩展帧/秒(靠近实际最大值1309);串口在460800波特率,CAN在1000kbps下,CAN发送速率可达5000扩展帧/秒以上;
三、模块硬件接口
3.1 模块接口及尺寸
图2 尺寸
3.2 模块指示灯寄义
本模块共有4个LED指示灯:PWR、RUN、COM和CAN。其根本寄义如表1:
表1 指示灯根本寄义
3.1 RS232/485接口
本模块共有1路RS232/485接口(5.00mm绿色端子引出),此中RS232接纳DB9母头(孔型),信号界说如下:
可以与尺度公头串口线对接。
3.4 电源接口
本模块接纳DC5~36V宽压供电,模块功率小于0.2W。
供电接口接纳两种:5.08mm间距产业级接线端子和玄色电源适配器插座,两种接口任选其一,如下图:
3.5 CAN接口
CAN接口接纳5.00mm绿色端子方法引出,接口具有120欧姆终端电阻选择功效。
此中“RS”为终端电阻选择,假如用导线将“RS”和“CAN_L”毗连起来,则模块外部的120欧电阻并入到CAN总线中;不然,120欧电阻未接入总线。
(依照ISO 11898标准,为了加强CAN-bus 通讯的牢靠性,CAN-bus 总线网络的两个端点
通常要参加终端婚配电阻(120Ω),如下图所示。终端婚配电阻的巨细由传输电缆的特征阻抗所决议,比方,双绞线的特征阻抗为120Ω,则总线上的两个端点也应集成120Ω终端电
阻。)
四、模块参数设置装备摆设
本模块可以用“智嵌物联CAN转串口设置装备摆设软件”经过RS232或RS485接口来完成对模块的参数设置装备摆设。假如失慎设置装备摆设错误而招致无法毗连设置装备摆设,可以经过“CFG”按钮来规复出厂参数(按住CFG,坚持5秒,3个绿色指示灯同步闪耀后,再松开)。
4.1 智嵌串口办事器设置装备摆设软件
设置装备摆设前必需要晓得模块前次设置装备摆设乐成的RS232/485波特率,假如遗忘,可以经过对模块规复出厂,出厂参数为115200,8,N,1:
第一步选择符合的“串标语”;
第二步选择前次模块的波特率等参数;
第三步“翻开串口”;
第四步“获取设置装备摆设参数”;
五、转换参数设置
该局部划定了设置装备摆设的转换形式、转换偏向、CAN标识符在串行中的地位、CAN信息能否转串行中以及CAN帧ID能否转串行中等。
5.1 转换形式
转换形式有4种可以选择:通明转换、通明带标识转换,款式转换和Modbus协议转换。
通明转换
是将一种款式的总线数据原样转换成另一种总线的数据款式,而不附加数据和对数据做修正。如许既完成了数据款式的互换又没有改动数据内容,关于两头的总线来说转换器好像通明的一样。这种方法下不会增长用户通讯包袱,而可以及时的将数据原样转换,能承当较大流量的数据的传输。
通明带标识转换
是通明转换的一种特别的用法,也不附加协议。这种转换方法是根
据通常的串行帧和CAN 报文的共有特征,使这两种差别的总线范例也能轻松的组建统一个
通讯网络。该方法能将串行帧中的“地点”转换到CAN 报文的标识域中,此中串行帧“地点”在串行帧中的肇始地位和长度均可设置装备摆设,以是在这种方法下,转换器能最大限制地顺应用户的自界说协议。
款式转换
是一种最复杂的利用形式,数据款式商定为13 字节,包括了CAN 帧的以是信息。
Modbus协议转换
是将尺度的Modbus RTU串行数据协议转换成特定的CAN数据款式,此种转换一样平常要求CAN总线设置装备摆设报文可编辑。
5.2 转换偏向
有3种可以选:双向、仅串口转CAN和仅CAN 转串口。
双向:转换器将串行总线的数据转换到CAN 总线,也将CAN 总线的数据转换到串行
总线。
仅串口转CAN:只将串行总线的数据转换到CAN 总线,而不将CAN 总线的数据转换
到串行总线。这种方法可以最大限制的过滤失CAN总线上的搅扰。
仅CAN 转串口:只将CAN 总线的数据转换到串行总线,而不将串行总线的数据转换
到CAN 总线。
5.3 CAN标识符在串行中的地位
该参数只要在“通明带ID转换”形式下无效:
在串口数据转换成CAN 报文时,CAN 报文的帧ID 的肇始字节在串行帧中的偏移地点和帧ID 的长度。
帧ID 长度在尺度帧的时分可添补1 到2 个字节,辨别对应CAN 报文的ID1,ID2,在扩展帧的时分可以添补1~4 个字节ID1,ID2,ID3 和ID4。尺度帧时ID 为11 位,扩展帧时ID 为29 位。
获取参数乐成后,就可以修正参数了,修正完成,点击“保管设置装备摆设参数”,然后重启设置装备摆设。上面对设置装备摆设软件里的各项参数举行阐明。
5.4 CAN信息能否转串行中
该参数仅在“通明转换”形式下利用,中选中该项后,转换器事情时会将CAN 报文的
帧信息添加在串行帧的第一个字节。未选中时不转换CAN 的帧信息 。
5.5 CAN帧ID能否转串行中
该参数仅在“通明转换”形式下利用,中选中该项后,转换器事情时会将CAN 报文的
帧ID 添加在串行帧的帧数据之前,帧信息之后(假如容许帧信息转换)。未选中时不转换
CAN 的帧ID。
六、CAN参数设置
该局部可以设置转换器的CAN的波特率、CAN发送ID、帧范例以及CAN的滤波器。
CAN波特率支持10kbps~1000kbps,也支持用户本人界说。帧范例支持扩展帧和尺度帧。CAN的帧ID为十六进制款式,在“通明转换”形式和“通明带标识转换”形式时无效,向CAN总线以此ID发送数据;在“款式转换”形式下该参数有效。
CAN吸收滤波器共有14组,每组都有“滤波范例”、“过滤验收码”和“过滤屏障码”构成。上面细致介绍怎样利用。
6.1 CAN波特率设置
波特率列内外曾经预定了大局部常用波特率:
假如必要其他波特率,可以选择“自界说”,然后再点“自界说波特率”来设置希冀波特率:
波特率盘算公式为:36000000/(同步段+相位缓冲段1+相位缓冲段2)/预分频;
比方250K的波>###+2)/8 = 250000 = 250K。
一样平常状况下,只必要在“希冀波特率”里填写所需的波特率,软件就会主动盘算出响应的参数(好比:预分频),这时会失掉一个“实践波特率”,假如两者的值差别,可以翻开“初级选项”:
6.2 CAN滤波器设置
CAN的14组吸收滤波器在出厂时都处于克制形态,即不合错误CAN总线数据做过滤。当用户必要利用滤波器时,只必要在设置装备摆设软件里添加即可,一共可以添加14组:
滤波范例:可选“尺度帧”和“扩展帧”;
过滤验收码:用于比对CAN吸收到的帧ID,以确定该帧能否被吸收,十六进制款式。
过滤屏障码:用于屏障验收码里的某些位,以确定验收码某些位(bit)能否到场比对(对应位为0不到场比对,为1到场比对),十六进制款式。
举例1:滤波器范例选择“尺度帧”;“过滤验收码”填00 00 00 01,“过滤屏障码”填00 00 0F FF;
释义:由于尺度帧ID只要11位,验收码和屏障码最初11位故意义, 屏障码最初11位满是1,以是验收码的后11位所有到场比对,因而上述设置可以让帧ID为0001的尺度帧经过。
举例2:滤波器范例选择“尺度帧”;“过滤验收码”填00 00 00 01,“过滤屏障码”填00 00 0F F0;
释义:同例1,尺度帧只要11位无效,屏障码的最初4位是0,表现验收码的最初4位不到场比拟,因而上述设置可以让帧ID从00 00到000F的一组尺度帧经过。
举例3:滤波器范例选择“扩展帧”;“过滤验收码”填00 03 04 01,“过滤屏障码”填1F FF FF FF;
释义:扩展帧有29位,屏障码的后29位全为1,表现验收码的后29位所有到场比对,因而上述设置可以让帧ID为00 03 04 01的扩展帧经过。
举例4:滤波器范例选择“扩展帧”;“过滤验收码”填00 03 04 01,“过滤屏障码”填1F FC FF FF;
释义:依据上述设置可以让帧ID从00 00 04 01到00 0F 04 01的一组扩展帧经过。
七、转换示例
7.1 通明转换
通明转换方法下,转换器吸收到一侧总线的数据就立刻转换发送至另一总线侧。
串行帧转CAN
串行帧的所有数据依序添补到CAN 报文帧的数据域里。转换器吸收到串行总线上的一帧数据后立刻转到CAN总线上。转换成的CAN 报文帧信息(帧范例局部)和帧ID 来自用户事前的设置装备摆设,而且在转换历程中帧范例和帧ID 不停坚持稳定。
数据转换对应款式如下图所示:
假如收到串的行帧长度小于即是8字节,依序将字符1到n(n为串行帧长度)添补到CAN报文的数据域的1到n个字节地位(如下图中n为7)。
假如串行帧的字节数大于8,那么处置器从串行帧首个字符开端,第一次取8个字符依
次添补到CAN报文的数据域。将数据发至CAN总线后,再转换余下的串行帧数据添补到CAN报文的数据域,直到其数据被转换完。
比方,CAN参数设置中选择了“尺度帧”,CAN ID 填00000060,留意尺度帧只要后11位无效。
转成CAN的数据如下:
CAN帧转串口
关于CAN总线的报文也是收到一帧就立刻转发一帧。数据款式对应如下图所示。
转换时将CAN报文数据域中的数据依序所有转换到串行帧中。
假如在设置装备摆设的时分,开启了“CAN信息能否转串行中”,那么转换器会将CAN报文的“帧信息”字节间接添补至串行帧。
假如开启了“CAN帧ID能否转串行中”,那么也将CAN报文的“帧ID”字节所有添补至串行帧。
比方,开启了“CAN信息能否转串行中”,不开启“CAN帧ID能否转串行中”,CAN帧转到串行如下图:
7.2 通明带ID转换
通明带标识转换是通明转换的特别用法,有利于用户经过转换器更利便的组建本人的网
络,利用自定的使用协议。
该方法把串行帧中的地点信息主动转换成CAN总线的帧ID。只需在设置装备摆设中报告转换器
该地点在串行帧的肇始地位和长度,转换器在转换时提取出这个帧ID 添补在CAN 报文的
帧ID域里,作为该串行帧的转发时的CAN报文的ID。在CAN报文转换成串行帧的时分也把CAN报文的ID转换在串行帧的响应地位。留意在该转换形式下,设置装备摆设软件的“CAN参数设置”项的“CAN ID”有效,由于此时发送的标识符(帧ID)由上述的串行帧中的数据添补。的。
串行帧转CAN
转换器吸收完一帧串行数据后,立刻转发到CAN总线上。
串行帧中所带有的CAN的ID在串行帧中的肇始地点和长度可由设置装备摆设设定。肇始地点
的范畴是0~7,长度范畴辨别是1~2(尺度帧)或1~4(扩展帧)。
转换时依据事前的设置装备摆设将串行帧中的CAN帧ID对应所有转换到CAN报文的帧ID域中(假如所带帧ID个数少于CAN报文的帧ID个数,那么在CAN报文的添补次序是帧ID1~
ID4,并将余下的ID填为0),别的的数据依序转换,如下图所示。
假如一帧CAN报文未将串行帧数据转换完,则仍旧用相反的ID作为CAN报文的帧ID持续转换直到将串行帧转换完成。
比方,CAN ID在串行帧中的肇始地点是0,长度是3(扩展帧状况下),串行帧和转
换成CAN报文后果如下图所示。此中,两帧CAN 报文用相反的ID 举行转换。
CAN帧转串行
假定设置装备摆设的CAN ID在串行帧中的肇始地点是0,长度是3(扩展帧状况下),CAN报文和转换成串行帧的后果如下图:
八、款式转换
数据转换款式,如下图所示每一个CAN帧包括13个字节,13个字节内容包罗CAN信息+ID+数据。
九、Modbus协议转换
将尺度的Modbus RTU串行数据协议转换成特定的CAN数据款式,此种转换一样平常要求CAN总线设置装备摆设报文可编辑。
串口侧数据必需切合尺度的Modbus RTU协议,不然不克不及转换,留意,CRC校验不转换到CAN侧。
CAN侧订定了一个复杂高效的分段通讯款式来完成 Modbus RTU的通讯,不区分主机和从机,用户只需依照尺度的Modbus RTU协议通讯即可。
CAN侧不必要加CRC校验,转换器收到最初一个CAN帧后,会主动加上CRC,构成一帧尺度的Modbus RTU数据包,发到串口上。
该形式下,设置装备摆设软件的【CAN参数设置】的【CAN ID】有效,由于此时发送的标识符(帧ID)由Modbus RTU串行帧中的地点域(节点ID)添补。
⑴ 串行帧款式(Modbus RTU)
串行参数:波特率、数据位、中止位和校验位都可经过设置装备摆设软件设置。数据协议需切合尺度的Modbus RTU协议。
⑵ CAN帧款式
CAN侧设计了一套分段协议款式,其界说了一个长度大于 8 字节的信息举行分段以及重组的办法,如下所示。留意,当CAN帧为单帧时,分段标记位为0x00。
CAN帧信息(近程帧或数据帧;尺度帧或扩展帧)经过设置装备摆设软件设置。
传输的 Modbus协议内容即可从“数据 2”字节开端,假如协议内容大于 7 个字节,那么将剩下的协议内容照这种分段款式持续转换,直到转换完成。
数据1是分段控制信息(占1个字节,8Bit),其寄义如下:
●分段标志
占1个Bit位(Bit7), 标记该报文能否是分段报文。该位为 0 表现独自报文,为 1 表现属于被分段报文中的一帧。
●分段范例
占2个Bit位(Bit6,Bit5),用于表现该报文在分段报文中的范例:
●分段计数器
占5个Bit位(Bit4-Bit0),用于区分统一帧Modbus报文中分段的序号,够验证是统一帧的分段能否完备。
⑶ 转换示例
串口侧Modbus RTU数据(十六进制):
01 03 14 00 0A 00 00 00 00 00 14 00 00 00 00 00 17 00 2C 00 37 00 C8 4E 35
第一个字节01是Modbus RTU的地点码,转换成CAN的ID.7-ID.0;
最初2个字节(4E 35)为Modbus RTU的CRC校验,丢失不转换。
终极转成CAN数据报文如下:
第1帧CAN报文:81 03 14 00 0A 00 00 00
第2帧CAN报文:a2### 00
第3帧CAN报文:a3 00 17 00 2C 00 37 00
第4帧CAN报文:c4 c8
CAN报文的帧范例(尺度帧或扩展帧)经过设置装备摆设软件设置;
每个CAN报文的第一个数据都有分段信息来添补(81、a2、a3和c4),该信息不转换到Modbus RTU帧中,仅做为报文确实认控制信息。
CAN侧的数据到ModBus RTU的转换原理和下面相反,CAN侧收到上述4条报文后,转换器会将收到的CAN报文依照上述的CAN分段机制组分解一帧RTU数据,并在开头加上CRC校验:
每个 CAN 报文的第一个数据都有分段信息来添补(81、a2、a3 和 c4),该信息不转换
到 Modbus RTU 帧中,仅做为报文确实认控制信息。