基于基于Arduino开发环境的光电编码器检测仪设计方案开发环境的光电编码器检测仪设计方案
导读:本文介绍了一种基于Arduino新型集成开发环境的光电编码器检测仪, 为了能快速简便地判断光电编码器
的好坏,实现了Arduino板与可编程智能液晶触摸显示器终端的通信控制,完成了对光电编码器信号准确的计
数,并能判断其好坏。 检测仪操作简单方便,对于基于Arduino集成开发环境开发的产品具有一定的参考价
值。 0 引言 Arduino是一款基于单片机系统的电子产品开发平台,它的软硬件系统都具有高度的模块
化,而且软件系统是完全开源的。其硬件系统也是高度模块化的,在控制板的外围有开关量输入/输出模块、各
种模拟量传感器输入模块、总线类传感器的输入模块,还有网络通信模块[1-2]
导读:本文介绍了一种基于导读:本文介绍了一种基于Arduino新型集成开发环境的光电编码器检测仪,新型集成开发环境的光电编码器检测仪, 为了能快速简便地判断光电编码器的好为了能快速简便地判断光电编码器的好
坏,实现了坏,实现了Arduino板与可编程智能液晶触摸显示器终端的通信控制,完成了对光电编码器信号准确的计数,并能判断其好板与可编程智能液晶触摸显示器终端的通信控制,完成了对光电编码器信号准确的计数,并能判断其好
坏。坏。
检测仪操作简单方便,对于基于Arduino集成开发环境开发的产品具有一定的参考价值。
0 引言
Arduino是一款基于单片机系统的电子产品开发平台,它的软硬件系统都具有高度的模块化,而且软件系统是完全开源
的。其硬件系统也是高度模块化的,在控制板的外围有开关量输入/输出模块、各种模拟量传感器输入模块、总线类传感器的
输入模块,还有网络通信模块[1-2].Arduino有自己特有的编程语言。其语法规则类似C/C++语言,IDE环境和语言把单片机与
硬件相关的一些参数都参数化并进行了很好的封装,把端口都打包,寄存器、地址指针之类的基本不用管,大大降低了软件开
发难度。因此不用开发者去了解其硬件结构即可对其编程,实现设计者的设计意图和创意[3].
本文提出了一种基于Arduino开发环境的光电编码器检测仪设计方案,能够对光电编码器的好坏进行判断,实现光电编码
器正转与反转时的脉冲计数。
1 整体设计
该检测仪主要由调理电路、Arduino控制板、液晶显示电路等组成,如图1所示。
CLKA和CLKB为光电编码器输出的两路相位相差90°的编码信号。调理电路用来对这两路信号进行整形滤波等信号处理,
送至Arduino控制板。Arduino控制板用来实现光编码器脉冲个数的计数,正转、反转两种脉冲信号的判别。液晶显示电路用来
显示检测的参数,同时对不同型号光电编码器进行选择控制。
2 硬件部分设计
2.1 调理电路
信号调理电路用于检测信号的调理,主要是把待测交流信号,经过滤波、放大、选通、有效值转换、限幅等处理,送到微
控制器进行测量。
图2为调理电路框图,光电编码器输出的两路相位相差90°的正弦波信号A、B,经施密特触发器变为a、b两组方波信号。A
分为两组:一路经微分电路,在方波的上升沿形成脉冲信号d,再由门电路输出,形成正转脉冲,另一路经反相器,形成反相方
波c,再经微分电路形成脉冲信号e,由门电路输出反相脉冲g.b组方波直接连到两个门电路的控制端,作为两个门电路的选通信
号。
光电编码器正转时,b组信号超前90°,它的方波正半波对应不经反相器a组方波的上升沿,正半波又使门电路选通,d组
脉冲通过门电路形成正转脉冲;而c组方波的上升沿对应b组方波负半波,此时虽然微分电路输出e脉冲,但门电路关闭,不能
输出反相脉冲g.当编码器反转时,情况正好相反。终输出的脉冲分别送入控制检测电路进行计数。
评论0