当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]摘要:随着计算机技术、微处理器技术以及通讯技术的不断发展,传统仪表已经不能适应工控的要求。而CAN总线控制器的出现为工业控制系统向分散化、网络化发展等开辟了新的空间

摘要:随着计算机技术、微处理器技术以及通讯技术的不断发展,传统仪表已经不能适应工控的要求。而CAN总线控制器的出现为工业控制系统向分散化、网络化发展等开辟了新的空间。CAN控制器具有良好的稳定性、高可靠性、较快的通讯速率以及低成本等特点,且能够有效支持实时、分布式控制,从而应用于许多领域,本设计针对内嵌CAN的STM32 F103RC处理器进行深入研究,并以它为核心部件进行CAN控制器软硬件的设计,该控制器兼容模拟量数字量的输入,保证了通用性并具有较大的应用范围。在采集与输出通道数量方面也得到了保障。例如由于工业需求要增加监测点或执行点,本控制器可以解决此问题。从长远考虑会降低用户的投资成本,本控制器可以与其他CAN节点及上位机组成CAN总线远程监控系统,实现仪表网络化,智能化。

关键词:CAN总线;数据采集;数据处理;数据输出;Stm32F103RC

现如今工业生产针对现场数据的采集与控制的要求在日益提高,生产实现自动化处理,若继续使用传统的一对一连线式或“各自为战”式集散系统,企业的生存和发展将面临着极大的挑战。

为实现整个系统设备之间以及系统与外界之间的信息交换,就必须搭建一种性能优越、可靠性高、造价低廉的通信系统,并且要求该系统可运行于工业环境中,实现底层系统与外界信息的交换,再者工业的发展也对现场控制器的性能也提出了更高的要求。在现场总线控制系统中,各个分散的测控设备作为独立的网络节点,通过现场总线联系起来,进而实现信息互通,共同完成自动化控制任务。工业CAN控制器的发展,推进仪器仪表系统的数字化、智能化、网络化进程,所以基于CAN 总线的现场总线控制器的研究与开发具有非常现实的意义。

本课题设计的CAN总线控制器,由技术角度出发可以总结为仪表系统。仪表系统是由各个功能模块集合而成,但也可以分离组合,其由结构划分为集成式、混合式和模块式3种形式。其中集成式仪表是将传感器与微处理器、信号调理电路做在同一块芯片上。集成度高、体积小,此传感器在目前技术水平上实现较难。而混合式集成仪表系统是将传感器的微处理器、信号调理电路做在不同芯片上,目前此结构仪表系统结构较多。而初级智能仪表系统可用相互独立的模块组成,如将微计算机、信号调理电路模块,输出电路模块,显示电路模块与传感器装配在同一壳体内,组成模块式传感器,本系统将对模块化的控制器进行研究。

1 总体方案设计

本课题针对工业现场的数据采集设计了基于STM32的CAN总线的控制器,根据功能结构的不同,该控制器将分为四大部分即现场数据采集、数据输出、实时数据处理以及CAN总线控制器。此系统CAN总线控制器采用STM32F103RC为主芯片,作为数据处理、存储及控制部分,考虑该控制器的通用性,在数据输入部分设计采集8路模拟量和4路数字量信号,8路模拟量通道可以接收由现场传感器信号经调理电路传输过来的标准电压电流信号。输出部分设计了4路模拟量和2路数字量输出通道,其中4路模拟量的输出通道,考虑到电压输出信号在传输过程中的损耗,这里采用了V/I转换电路,在第一章已经说明 Stm32f103rc内嵌CAN控制器,只需在外部接入CAN收发器,就可以完成与上位机通讯功能。系统硬件框图如图1所示。

 


2 系统硬件电路设计

2.1 系统模拟量采集电路

本设计要求做成通用的CAN控制器,设计中要采集8路模拟信号(电压信号0~5 V,电流信号4~20 mA),经过对模拟信号的处理再传输到主芯片的ADC进行转换,STM32F103RC的电压输入范围在2.4~3.3 V之间,所以在采集电压信号时我们要经过分压电阻进行分压处理,针对电流信号,要将电流转换为电压,所以在此引入精密电阻,即R=250 Ω,经过转换处理得到理想的电压符合AD的输入范围。考虑到STM32F103RC:芯片内部有2个12位的A/D转换模块,是一种逐次逼近式A/D转换器,在模拟信号输入时将分别用2个A/D模块各采集4路模拟信号。

在选取运放的时候还要注意参数的选择要与芯片的ADC之间的误差匹配问题,在此由计算得到满量程3.3 V时(控制器ADC为12位转换,得到对应的LSB为0.8 mV),在选取运放时要特别注意该运放所引起的误差是否在允许的范围之内,本设计采用低功耗精密运算放大器TLV2231CDBV,该运放为单电源供电,工作电压范围在2.7~10 V之内,输入失调电压为0.45 mV,失调漂移在0.55μV/℃,共模抑制比最小在60 dB,具体电路如图2所示。

 


2.2 系统数字量采集电路

本设计的数字采集模块共涉及了4个数字量。由于该控制器应用于工业现场,所以会受到较大的外界干扰,为了增强其干扰特性,在数字信号进入微控制器之前加入了光电隔离电路。我们这里采用高速晶体管光耦HCPL0531进行隔离,针对光耦的传输特性而言,在逻辑低电平时,R=1.9 kΩ时的传播延迟时间达到0.45μs,最大为0.8μs,上述计算中取得R=1.2 kΩ随着R的减少延迟时间将有所减短。

 


2.3 系统模拟信号输出电路

本设计将设计2路模拟量输出,主控制芯片内嵌了DAC,可以将数字量转换成模拟量电压信号传输到现场,由于电压信号在传输过程中会造成衰减,于是增加了V/I转换电路,在输出模拟信号时,常以电压信号为准,但针对传输距离较长会导致电压信号有所衰减,通常改进的办法是增加信号接收端的输入电阻,可是输入电阻的增加会对线路的抗干扰性产生降低的影响。所以在此我们将电压传输变为电流传输,其中V/I设计中用到运放TLV223 CDBV,该运放采用单电源直流5 V供电。经过V/I电路实现0~20 mA电流的输出。

 

[!--empirenews.page--]

2.4 系统数字信号输出电路

针对此模块设计,本设计包括4路数字量输出,产生的数字信号由处理器产生频率信号经过主控芯片I/O输出。对此本设计考虑到两点:将产生的二进制0或1直接输出到执行器前,会受到外部干扰,此处采用了光电隔离处理,选用了H11A817A作为光电隔离器件,集电极输出电流为50 mA;再者由于数字输出口的驱动能力较低,所以在此选用高耐压,大电流达林顿阵列,由7个硅NPN达林顿管组成的ULN2003AD,该器件电流增益高,灌电流可达500mA,工作电压较大,具有较宽的温度范围,所以选取该器件来提高数字输出端口的驱动能力。

 


该电路的工作原理:对于第一路数字量输出来说,第一种情况若DO0端输出电压信号为低电平时,则H11A817A的发光二极管导通发光,致使光敏三极管端导通,输出信号接在光敏三极管集电极,隔离后得到高电平信号。第二种情况若DO0端输出高电平。光敏三极管不导通。最终得到低电平信号。

3 测试系统软件设计

为了使系统实现需要的功能,还必须有软件的支持。在此主要用C语言编写单片机的软件程序,软件部分主要完成对传感器信号A/D,D/A转换处理,CAN总线的通信等工作。该控制器实现是通过微处理器把信号调理电路输出的信号进行转换,以便于进一步处理、传输等。所有功能都在这个主循环里面实现,只需调用这个主循环以外所定义的功能函数。根据不同的值执行与之对应的处理程序,A/D,D/A在系统初始化后,启动并不断转换采样通道并根据采样值不断更新显示,当有中断发生时执行中断服务程序。

对于整个设计框架,主程序尤为重要,系统开启时,主程序调用各个模块的功能子函数进行初始化,主函数将各个子程序连接起来,处理各个事件,等到程序运行结束后,再还原系统环境。本系统的软件部分主要包括:STM32自带ADC寄存器设置,AD转换程序,CAN通讯收发程序,DA转换程序等。总流程如图6所示。

 


4 通讯设计

制定iCAN协议的思路源于为中国中小型CAN应用网络提供一种简单、可靠、稳定的应用层协议。在充分汲取了DeviceNet协议和 CANopen协议之精萃的基础上,优先保障通信数据的可靠性与实时性,以相对简单的方式进行数据通信,从而有效降低了硬件实现成本,这就是iCAN协议的巨大优势。系统iCAN所具备的特点结构简单,灵活构建、低成本,而且由于采用CAN总线还具有良好的可靠性和稳定性,同时iCAN系统具有易于组态,安装、运行、维护简便的特点。

iCAN协议规范中,I/O数据单元分为7个不同的空间,占用0x00—0xdf数据空间:数字量输入单元DI、数字量输出单元DO、模拟量输入单元 AI、模拟量输出单元AO、串行接口0单元、串行接口1单元以及保留部分。iCAN协议中资源节点占用256字节空间:对于任意I/O数据需访问指定资源节点地址,但对于配置资源中的IO配置单元要通过资源节点地址以及子地址的方式访问,如图7所示说明报文处理流程。

 


5 结论

本设计的CAN控制器具备运行速度快、体积、性能可靠、功耗低等特性,实现了工业现场的数据采集、数据处理、数据输出以及CAN控制器与上位机通讯等功能。在模拟量与数字量的采集基础上,CAN控制节点上也有很大余量。本设计主要是针对当前工业控制的需求和现有工业设备接口单一、传输距离有限、数据网络化程度较低等多方面的缺点而开发设计的,设计出了这款接口种类多、体积小、可靠性高、易操作的新型CAN智能控制器设备。达到预期效果。采用 STM32F103RC平台控制板进行软件模拟测试,数据正常采集输出。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

CAN总线是一种串行通信协议,是ISO国际标准化的。它最初设计用于汽车内的多路电气布线以节省铜线,但也可以用于许多其他环境。在CAN总线中,所有的单元都可以发送和接收信息,且所有与总线相连的单元都可以开始发送新消息,但如...

关键字: CAN总线 CAN总线故障分析

CAN通信是一种控制器局域网络(Controller Area Network)通信协议,是由德国BOSCH公司开发,并最终成为国际标准(ISO 11898)。它是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率...

关键字: can通信 CAN总线

CAN总线通信是一种用于解决汽车众多控制部件之间的数据交换而开发的一种串行数据通信总线。它的英文全称是Controller Area Network,即控制器局域网。CAN总线通信的特点包括多主控制、通信速度快、通信距离...

关键字: CAN总线 CAN故障维修

无论是CAN总线还是485总线,实际应用中经常会出现各种异常,常因总线组网后,波形边沿出现过缓、呈“镰刀”状的现象,导致数据丢失或出错,那么这现象前因后果大家是否真正的了解呢? 

关键字: CAN总线 485总线 机器人

深耕于CAN总线产品领域的克萨(Kvaser)推出了Air Bridge系列,其最大的亮点就是具有稳定高效的无线连接功能。

关键字: Kvaser CAN总线

当我告诉人们我从事专注于汽车安全的半导体行业时,他们通常认为一定会涉及汽车报警和车钥匙。尽管汽车盗窃仍是一个合理的担忧,但与内部电子控制单元(ECU)及其车内外通信相关的安全威胁明显更大。在今年销售的所有新车中,大约有5...

关键字: 车载网络通信 ECU CAN总线

汽车常见总线:随着汽车内各个系统的控制都在向智能化和自动化转变,汽车电气系统变得越来越复杂,汽车各个功能系统相互之间、功能系统和汽车显示仪表之间、以及功能系统和汽车故障诊断系统之间都需要进行数据交换。如果使用传统的点对点...

关键字: CAN总线 芯片 汽车总线

P.I. Works 是一家领先的人工智能驱动的移动网络自动化管理和优化解决方案提供商,该公司宣布推出新的无线电接入网络(RAN)智能控制器(RIC),以进一步增强其EXA产...

关键字: 智能控制器 WORKS AN IC

过去的2022年,移动物联网领域发生了多起事件,对未来多年行业走势会发生深远影响。岁末年初,我们不妨再次回顾一下这些事件。

关键字: 物联网 5G 智能控制器

21世纪电动汽车的全面推出,是汽车工业的一次大革命。自动驾驶技术让交通更加便捷,改变了人类的驾驶习惯。在控制单元高度电子化的车辆架构下,CAN总线是关键的通信接口之一。

关键字: 电动汽车 CAN总线
关闭
关闭