如何通过自定义通信协议扩展可编程控制器的IO数量

如何通过自定义通信协议扩展可编程控制器的IO数量

💡 原文英文,约1200词,阅读约需5分钟。
📝

内容提要

客户需要20个数字输入的AGV集成,但现有模块仅有14个输入。为解决此问题,设计了一套通信协议,通过MCU外部中断接收数据,并使用低通滤波器减少干扰。硬件响应时间分析显示,短路光耦合器D47后,通信恢复正常,确保可靠接收。

🎯

关键要点

  • 客户需要20个数字输入的AGV集成,但现有模块仅有14个输入。
  • 为解决输入不足的问题,设计了一套通信协议。
  • 通信协议定义了数据位的表示方式,包括高低电平的持续时间。
  • 使用MCU的外部中断接收数据,并启用IO口的上升和下降沿中断。
  • 通过定时器计算数据位的时间差,判断接收到的数据位是0还是1。
  • 系统的Tick时钟中断用于发送数据,确保数据发送的及时性。
  • 硬件响应时间分析显示,短路光耦合器D47后,通信恢复正常。
  • 在输入信号中添加低通滤波器以减少干扰,确保可靠接收。
  • 考虑到各种硬件因素,确保数据波形的稳定性和准确性。
➡️

继续阅读