在线客服
  • |
  • 400-821-8800
  • |
  • 手机西域
    手机西域下载二维码

    开发者:西域智慧供应链(上海)股份公司

    版本:4.7.6

    扫一扫,下载西域客户端
    手机采购 移动办公
    iPhone Android
  • |
  • 快速下单
  • |
  • 我的西域
  • 设计方案:基于Arduino开发的光电编码器检测仪

    文/ 发布于2017-07-11 浏览次数:933

      Arduino是一款基于单片机系统的电子产物开辟平台,它的软硬件系统都具有高度的模块化,并且软件系统是完全开源的。其硬件系统也是高度模块化的,在焦点节制板的外围有开关量输入/输出模块、各类模仿量传感器输入模块、总线类传感器的输入模块,还有收集通信模块[1-2].Arduino有本人特有的编程言语。其语法法则雷同C/C++言语,IDE和言语把单片机与硬件相关的一些参数都参数化并进行了很好的封装,把端口都打包,寄放器、地址指针之类的根基不消管,大大降低了软件开辟难度。因而不消开辟者去领会其硬件布局即可对其编程,实现设想者的设想企图和创意.

      该检测仪次要由调度电、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.当编码器反转时,环境正好相反。最终输出的脉冲别离送入节制检测电进行计数。

      2.2Arduino节制板

      本检测仪采用了意大利最新开辟的ArduinoDue微节制器。ArduinoDue是一块基于AtmelSAM3X8ECPU的微节制器板。它是第一块基于32位ARM焦点的Arduino,利用32位ARM焦点的Due相较于以往的利用8位AVR焦点的其他Arduino更强大:32位焦点在一个时钟能处置32位的数据。节制板包罗54个数字I/O引脚(此中12PWM输出),12个模仿输入通道,2个模仿输出通道(DAC),I/O口总输出电流为130mA.3.3V端口输出能力为800mA,5V端口输出能力为800mA,FLASH512KB(所有空间都能够储存用户法式),SRAM96KB(两个部门:64KBand32KB),时钟速度[4-5]为84MHz.

      因为Arduinodue的工作电压为3.3V,I/O口可承载电压也为3.3V,所以颠末调度电发生的5V脉冲不克不及间接处置。本检测仪通过SN74lVC4245芯片把5V的脉冲整形为3.3V的脉冲。

      2.3液晶显示电

      本设想中采用了国产开辟的可编程智能LCD(即ProgrammableSmartLCD,简称PS-LCD)。PS-LCD是一种包含LCD显示屏、LCD节制器、触摸屏、人机界面处置系统和通信接口于一体的智能显示模组,通过可选的通信接口与外部节制单位(如:51单片机、ARM、DSP、PC、PLC、总线设备等)毗连,实现系统的人机交互界面。

      新建Designer工程,定义界面分辩率、界面切换结果和主界面等;设置布景、插手/设置控件、定义事务动作等;PS-LCD的采用JavaScript的脚本言语,JavaScript是因特网上最风行的脚本言语,它具有于全世界所有Web浏览器中,可以或许加强用户与Web站点和Web使用法式之间的交互。本液晶显示屏通过脚本编写及时地显示微节制器采集送过来的脉冲个数,并进行判断。

      用LCD模仿器验证界面结果和通信过程,反复前面步调直到对劲为止。

      PS-LCD作为先辈的智强人机界面产物,能通过通信接口轻松矫捷地与外部节制单位实现数据交互。目前,PS-LCD支撑两种通信和谈:CTP(CookyTalkingPro-tocol)和谈和用户自定义(UserDefine)和谈。本检测仪采用的是CTP和谈。

      在CTP通信模式下,PS-LCD在收到通信号令后,会立即施行,竣事后会向主节制器前往成果。因为PS-LCD的串口通信和谈跟微节制器ArduinoDue的通信和谈不分歧,在通信过程中要进行转换和节制。为了打消PS-LCD号令施行成果的主动答复动静,在CTP通信模式下,通过挪用ctpSet(“reply”,0)函数打消PS-LCD的主动答复。PS-LCD同时通过通信和谈发生的串口信号来节制微节制器的工作,真正实现人机互动的结果[6].

      生成界面输出文件spf,然后将spf文件通过PS-LCD公用软件东西Flex下载到PS-LCD验证最终界面结果。

      本检测仪PS-LCD最终的检测界面如图3所示。

      3软件部门设想

      3.1脉冲计数子法式

      为了能愈加精确地对脉冲进行测试,采用外部中缀进行计数,Arduinodue节制板的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开辟的电子制造竞赛、电子艺术品创意开辟、电子检测产物等方面具有较好的参考价值。

    免责声明:文章仅供学习和交流,如涉及作品版权问题需要我方删除,请联系我们,我们会在第一时间进行处理。
    相关资讯
    沪公网安备 31011502008645号 | 沪ICP备09003861号 | 增值电信业务经营许可证:合字B2-20200044 | 第二类医疗器械经营备案编号:沪浦药监械经营备20200151号 | 医疗器械经营许可证编号:沪浦药监械经营许20200092号 | 互联网药品信息服务资格证书编号:(沪)-经营性-2020-0028 | 危险化学品经营许可证:沪(浦)应急管危经许[2023]205876 | 食品经营许可证书编号:JY13101155461219 | 营业执照