新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于CAN总线的智能控制器设计

基于CAN总线的智能控制器设计

作者:时间:2016-09-12来源:网络收藏

2.4 系统数字信号输出电路

本文引用地址:http://www.eepw.com.cn/article/201609/303576.htm

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

e.jpg

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

3 测试系统软件设计

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

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

f.jpg

4 通讯设计

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

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

g.jpg

5 结论

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


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭