该项目基于STC8系列单片机设计,板载24路光耦隔离输入、20路MOS管输出、带1路RS232接口、1路RS485接口,提供PCB文件和基本控制源码,需要“自定义协议通信”和“Modbus通信底层源码”的请联系作者!
一、产品简介
该产品实现了以低成本单片机为主控,替代高成本的PLC实现工业自动化控制的方案。自带24路输入、20路输出、带1路RS232接口、1路RS485接口,编程灵活、简单,上手容易,可扩展性好,在大部分场合完全胜任PLC的工作,同时也可以使用自定义协议和Modbus RTU协议,在一些场合替代普通IO卡来与工控机一起配合使用。尤其是对于批量的设备来说,大大节约了控制成本,灵活性更强。
二、应用场景
该产品主要应用于“工业自动化控制”,在很多场合,可直接替换PLC(可编程逻辑控制器)用于工业自动化控制,从而缩减成本。
三、产品概述
该产品是一款以STC8A8K64S4A12单片机(可以用STC8A8K64D4 PIN TO PIN替换)为主控芯片的24路输入、20路输出、带1路RS232接口、1路RS485接口的工业控制板。可基于KEIL 4平台采用C语言开发,也可以当做一款IO控制卡来使用,当IO控制卡使用时有“自定义协议”和“Modbus RTU协议”两个软件版本,关于这两个版本的详细通讯协议见附件“ANICE DIO2420 使用说明 V1.1”和“Modbus通信协议说明”。
四、产品参数
1、主控制芯片采用STC8A8K64S4A12单片机(可以用STC8A8K64D4 PIN TO PIN替换);
2、24路输入全部采用光耦隔离,支持NPN输入和PNP输入切换;
3、20路输出全部采用MOS管输出,单路支持1A以上负载;
4、电源输入兼容12V/24V供电系统;
5、支持“自定义协议”通信和“Modbus RTU协议通信”,可免费提供两种版本软件的HEX文件(请联系作者);
五、使用说明
该产品可以直接使用KEIL 4软件平台开发,对一些电气元件,如:继电器、电磁阀、步进电机等,进行控制,只需要会C语言就可以开发,作者提供基本的操作例程,用户可以在此基础上进行二次开发。
此外,该产品还可以作为标准的IO卡来使用,IO卡功能有两个软件版本,一个是“自定义协议”,另一个则是“Modbus RTU协议”,用户可以根据不同需求,烧录相应的底层软件,详见附件中的“ANICE DIO2420 使用说明 V1.1.pdf”和“Modbus通信协议说明.pdf”。如需要源码,可联系作者(温馨提示:“自定义协议”和“Modbus RTU协议”源码不免费提供)。
六、备注说明
默认提供的源码是基于KEIL 4平台的“输入、输出测试程序”,联系作者可以提供“自定义协议”和“Modbus RTU协议”的一键升级工具给用户测试,对应的源码不免费提供,需要联系作者额外付费。
硬件连接:使用USB转232串口线,将串口线上DB9的2、3、5针脚脚分别连接到控制板的Tx+/2、Rx-/3和GND端子上,并给板子提供DC24V电源。
一键升级工具的详细使用说明见附件“ANICE DIO2420-IO 一键升级工具说明.pdf”,测试用的软件也可以直接在附件中下载。
七、测试视频
笔者主要以类似“流水灯”程序为例简单介绍该板子的使用方法,关键逻辑部分代码如下:
Y00 = OutputT_ON;delay_ms(250);Y00 = OutputT_OFF;delay_ms(250); Y01 = OutputT_ON;delay_ms(250);Y01 = OutputT_OFF;delay_ms(250); Y02 = OutputT_ON;delay_ms(250);Y02 = OutputT_OFF;delay_ms(250); Y03 = OutputT_ON;delay_ms(250);Y03 = OutputT_OFF;delay_ms(250); Y04 = OutputT_ON;delay_ms(250);Y04 = OutputT_OFF;delay_ms(250); Y05 = OutputT_ON;delay_ms(250);Y05 = OutputT_OFF;delay_ms(250); Y06 = OutputT_ON;delay_ms(250);Y06 = OutputT_OFF;delay_ms(250); Y07 = OutputT_ON;delay_ms(250);Y07 = OutputT_OFF;delay_ms(250); Y08 = OutputT_ON;delay_ms(250);Y08 = OutputT_OFF;delay_ms(250); Y09 = OutputT_ON;delay_ms(250);Y09 = OutputT_OFF;delay_ms(250); Y10 = OutputT_ON;delay_ms(250);Y10 = OutputT_OFF;delay_ms(250); Y11 = OutputT_ON;delay_ms(250);Y11 = OutputT_OFF;delay_ms(250); Y12 = OutputT_ON;delay_ms(250);Y12 = OutputT_OFF;delay_ms(250); Y13 = OutputT_ON;delay_ms(250);Y13 = OutputT_OFF;delay_ms(250); Y14 = OutputT_ON;delay_ms(250);Y14 = OutputT_OFF;delay_ms(250); Y15 = OutputT_ON;delay_ms(250);Y15 = OutputT_OFF;delay_ms(250); Y16 = OutputT_ON;delay_ms(250);Y16 = OutputT_OFF;delay_ms(250); Y17 = OutputT_ON;delay_ms(250);Y17 = OutputT_OFF;delay_ms(250); Y18 = OutputT_ON;delay_ms(250);Y18 = OutputT_OFF;delay_ms(250); Y19 = OutputT_ON;delay_ms(250);Y19 = OutputT_OFF;delay_ms(250); LED_R = Led_ON;delay_ms(250);LED_R = Led_OFF;delay_ms(250); LED_G = Led_ON;delay_ms(250);LED_G = Led_OFF;delay_ms(250); LED_B = Led_ON;delay_ms(250);LED_B = Led_OFF;delay_ms(250);
即:Y00~Y19这20个输出端口以及LED红、绿、蓝这三个指示灯,依次亮大约250毫秒,再灭大约250毫秒,形成一个类似流水灯的效果。详细代码大家可以下载附件中的“ANICE DIO2420-IO 测试(源代码)”!如果只是需要测试视频中的效果,直接下载“ANICE DIO2420-IO 一键升级工具.rar”即可。
点赞