完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
现场总线
最近的实验需要较高的运动控制速率。市场上大部分的驱动板目前只支持CAN通信。毕竟CAN通信配置简单而且便宜。通信速率在500kbps,当使用多个驱动器时,一拖多不能达到想要的控制速率。所以选择EtherCAT转CAN。采用树形网络来作为通信网络结构。 CAN总线(Control Area Network) 一、CAN总线是什么? CAN是Controller Area Network的简称,是一种有效支持分布式控制或实时控制的串行通信网络,最早是由以研发和生产汽车电子产品著称的德国BOSCH公司开发的,1986年,BOSCH开发出面向汽车的CAN通信协议,后来,CAN总线通过ISO 11898和ISO 11595进行了标准化,现在在欧洲是汽车网络的标准协议。 把汽车比如成人体,那CAN总线就是神经系统,电子控制单元(ECU)就是身体的一部分,身体是由多个ECU组成的,各个ECU之间通过神经系统进行通信,一个部分感知到的信息可以与另一部分共享。 CAN的应用非常广泛,工业自动化、船舶、医疗设备、工业设备等方面。 CAN总线的作用? 在汽车上,CAN总线的作用就是把不同的部件连接起来,然后这些部件都执行同一套标准协议,这样的好处是兼容性高,信息可以可靠共享,并且能减少整车的线束数量。 CAN总线的优点 简单低成本: ECU通过单个CAN系统进行通信,而不是直接的复杂模拟信号线通信,这样减少了错误,重量,接线和成本。 完全集中: CAN总线提供了一个接入点,可以与所有网络ECU进行通信,——支持集中诊断,数据记录和配置。 稳定: CAN总线具有强大的抗电干扰和抗电磁干扰能力,非常适合对安全要求严格的应用(例如车辆)。 高效: 通过ID对CAN帧进行优先级排序,以便优先级最高的数据可以立即访问总线,而不会引起其他帧的中断。 CAN总线拓扑图 从拓扑图中可以看到一个CAN节点,主要由CPU,CAN控制器,CAN收发器组成 CAN总线是差分线,有CAN_H和CAN_L两根线,差分线的抗干扰能力强,外界有干扰时,几乎同时会耦合到差分线的两根线上,而接收端关心的只是两信号的差值,所以外界的共模噪声可以被完全抵消,图中箭头所示,虽然两根线都受到干扰,但是两者差值不变。 1 CAN控制器的作用 CAN控制器一方面接收收发器的数据,进行解析后发送给CPU;另一方面接收CPU的指令数据,然后发送给CAN收发器。 120Ω终端电阻 高频信号传输时,信号波长相对传输线较短,信号在传输线终端会形成反射波,干扰原信号,所以需要在传输线末端加终端电阻,使信号到达传输线末端后不反射。 对于低频信号则不用CAN总线两端必须连接终端电阻才可以正常工作,终端电阻应该与通讯电缆的阻抗相同,典型值为120欧姆,其作用是匹配总线阻抗,提高数据通信的抗干扰性及可靠行。 各接口协议速率对比 IIC S(标准模式)测量与控制场合,100kb/sF(快速模式),速率为 400kb/sHs(高速模式),速率为 3.4Mb/s。 具体看器件要求,单片机一般是400k或以下常用。IIC协议是有规定的,其总线的容性负载要求,目前最高的1M左右。普通的芯片只有 低速 100K 与 高速 400K 两种规格。如果通信距离较远,导线的分布电容较大,而上拉电阻又取得太时,信号上升时间不够,接收方就可能会读不到高电平。我们知道IIC是靠上拉出来的高电平,信号上升所需的时间正比于上拉电阻值和该点对地电容的乘积。 SPI SPI是一种高速的,全双工,同步的通信总线,由Motorola开发,并没有一个官方标准。已知的有的器件SPI已达到50Mbps。具体到产品中SPI的速率主要看主从器件SPI控制器的性能限制。对于STM32器件,如果用的固件库,那就是更改SPI_InitStructure.SPI_BaudRatePrescaler参数。 赋值在stm32xxxxx_spi.h中有定义,是APB2或者APB1总线频率的1/2~1/256。 CAN 理论上,CAN总线在速率小于5K时,距离可达10km;速率接近1M时,距离小于40m。现实中常用的高速CAN总线速率有500k或250k,低速CAN总线有125k和62.5k,传输距离在几米到几十米间。速率和传输距离的选择还有考虑硬件的要求。理论上,一条CAN总线上可以连接无数个CAN设备,但实际上受到其他条件限制,数量总是有限的。例如,使用了更上层的CANOPEN协议,则一条总线上只能有128个设备。 485 RS-485/422采用平衡发送和差分接收方式实现通信:发送端将串行口的TTL电平信号转换成差分信号 A,B两路输出,经过线缆传输之后在接收端将差分信号还原成TTL电平信号。由于传输线通常使用双绞线,又是差分传输,所以又极强的抗共模干扰的能力,总线收发器灵敏度很高,可以检测到低至200mV电压。RS-485/422最大的通信距离约为1219M,最大传输速率为10Mb/S,传输速率与传输距离成反比,在100Kb/S的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。RS-485标准采有用平衡式发送,差分式接收的数据收发器来驱动总线,具体规格要求: 1. 接收器的输入电阻RIN≥12kΩ 2. 驱动器能输出±7V的共模电压 3. 输入端的电容≤50pF 4. 在节点数为32个,配置了120Ω的终端电阻的情况下,驱动器至少还能输出电压1.5V(终端电阻的大小与所用双绞线的参数有关) 5. 接收器的输入灵敏度为200mV(即(V+)-(V-)≥0.2V,表示信号“0”;(V+)-(V-)≤-0.2V,表示信号“1”) USB USB1.1:1. 低速模式(low speed):1.5Mbps2. 全速模式(full speed): 12MbpsUSB2.0:向下兼容。增加了高速模式,最大速率480Mbps。1. 高速模式(high speed): 25~480Mbps USB3.0:向下兼容。2.super speed :理论上最高达4.8Gbps,实际中,也就是high speed 的10倍左右。 工业以太网 EtherCAT 还有其他可以代替的工业以太网协议,比如powerlink。Etherc EtherCAT传输性能 传输速率:– 2 x 100 Mbit/s (高速以太网, 全双工模式)• 刷新时间:– 256 数字量 I/O:11 µs– 分布于 100 节点的 1000 开关量 I/O:30 µs = 0.03 ms– 200 模拟量 I/O (16 bit) :50 µs, 采样率 20 kHz– 100 伺服轴 (每个 8 Byte IN+OUT) : 100 µs = 0.1 ms– 12000 数字量 I/O: 350 µs• 40 轴 (每轴 20 Byte 输入和输出数据)• 50 I/O 站,共计560个EtherCAT总线端子模块• 2000 个数字量 + 200个模拟量, 总线长度500米• EtherCAT: 循环时间 = 276 µs• 总线负载44%, 报文长度 = 122 µs EtherCAT应用层 协议层 EtherCAT应用层支持多种设备行规以实现邮箱通讯,包括CANopen、SERCOS、HTTP等,基于EtherCAT的应用层行规被称为xoE协议(xxx over EtherCAT)。设备开发中,从站设备无需支持所有行规,根据其应用选择最合适的一种即可。下面将以应用最为广泛的CoE协议举例描述。 CoE协议 CoE全称CAN application protocol over EtherCAT,是EtherCAT应用层协议实现的一种,其特点是根据CiA402协议编写,使用对象和对象字典的功能实现邮箱通讯。 CANopen协议已经有成熟且大规模的应用,使用CoE协议,相关设备只需要经过少量的更改即可应用于EtherCAT协议上,大部分CANopen的固件也可以得到重复利用。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1792 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1626 浏览 1 评论
1094 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
732 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1682 浏览 2 评论
1943浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
742浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
578浏览 3评论
601浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
563浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 16:56 , Processed in 0.768050 second(s), Total 47, Slave 40 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号