基于Arduino的光电编码器检测仪设计
自动回复消息,在CTP 通信模式下,通过调用ctpSet(“reply”,0)函数取消PS-LCD 的自动回复。PS-LCD同时通过通信协议产生的串口信号来控制微控制器的工作,真正实现人机互动的效果[6].
生成界面输出文件spf,然后将spf文件通过PS-LCD专用软件工具Flex下载到PS-LCD验证最终界面效果。
本检测仪PS-LCD最终的检测界面如图3所示。
3 软件部分设计
3.1 脉冲计数子程序
为了能更加准确地对脉冲进行测试,采用外部中断进行计数,Arduino due 控制板的54个数字I/O引脚,均可以作为中断端口。编写的主要计数程序如下[7-10]:
3.2 液晶显示程序
根据所要测试的光电编码器,选择不同的型号,不同型号的光电编码器定义不同的发送信号,以LBJ-001-2048 型光电编码器为例,选择按钮的脚本编写子程序如下:
其中sysCom0.write(0×41)为写入串口发送缓冲区,串口向外部发送1 字节数据0×41,即是字符‘A'.当Arduino微控板接收到串口送过来的'A’字符时,即可判断出待测试的光电编码器型号为LBJ-001-2048,启动相对应的程序进行测试。同理当选择第二种型号测试时,Arduino微控板将接收到串口送过来的‘B’字符时,即可判断出待测试的光电编码器型号为SE0932II-5400P/r,启动相对应的程序进行测试。
4 结语
本文着重介绍了基于Arduino开发环境的光电编码器检测仪的设计,并实现Arduino微控板与PS-LCD的通信控制问题。由于Arduino是一个开放的单片机开发人机互动产品的软硬件平台,对于基于Arduino开发环境的电子制作竞赛、电子艺术品创意开发、电子检测产品等方面具有较好的参考价值。
- 牛人DIY:关注空气质量 自制Arduino检测器(01-29)
- 基于Arduino的超声测距系统的设计(02-28)
- 七个经典的Arduino创意制作实例,有图有真相(软硬件资料齐全)(06-03)
- ARM11后现代时:Cortex开枝散叶(06-04)
- 十个中文例程教会你轻松上手制作Arduino智能小车(06-04)
- [开发案例] 为Arduino模拟量传感器添加物联App功能(03-23)