一种基于MODBUS的嵌入式人机界面的设计与实现.docx

上传人:安*** 文档编号:17775654 上传时间:2022-05-26 格式:DOCX 页数:11 大小:20.01KB
返回 下载 相关 举报
一种基于MODBUS的嵌入式人机界面的设计与实现.docx_第1页
第1页 / 共11页
一种基于MODBUS的嵌入式人机界面的设计与实现.docx_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《一种基于MODBUS的嵌入式人机界面的设计与实现.docx》由会员分享,可在线阅读,更多相关《一种基于MODBUS的嵌入式人机界面的设计与实现.docx(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、一种基于MODBUS的嵌入式人机界面的设计与实现一种基于MODBUS的嵌入式人机界面的设计与实现jiangf导语:文章介绍了硬件设计电路和软件的设计经过及一种好用和简单的MOOBUS从设备调试工具Modbusslave。一、设计概要现场总线是一种用于底层工业控制和测量仪表之间的总线,人机界面设备就是作为现场总线中,控制器和操纵者之间的“通讯员它可以完成现场控制器与操纵者之间数据的接收和发送。本设计使用Atmel单片机89C52作为主要控制芯片,用以东芝丁6963C为控制芯片的12864液晶比O作为显示界面,采用工业标准通讯协议MOOBUS作为数据信息交互的介质,主要功能是完成对工业网络中现场控

2、制器数据的收集显示,根据需要设定数据并发送到现场控制器完成控制任务,实现人机之间控制信息的交互传送。文章分别介绍了硬件设计电路和软件的设计经过,并介绍了一种好用和简单的MOOBUS从设备调试工具Modbusslave。设计中使用12864LCD实现显示界面如图1所示,其中“实际值显示从现场取要的数据,“设定值是由操纵者设定并已传入现场设备的参数,“操纵值显示操纵者可以修改但还未发送到现场设备的数值。最后一行用来指示4个按键。二、硬件局部设计系统硬件电路框图如图2。电路局部特别简单,包括看门狗电路、4个按键的直接连接、程序扩展电路、RS232电平转换局部、液晶点阵连接局部。MAX7OS的功能是:

3、上电复位程序监视。89C52正常工作,执行喂狗程序时,不断从P17输出脉冲信号至MAX705的WDI脚,当单片机程序“跑飞后,Pl.7不再输出脉冲信号MAX705的WDI脚在1.6S内收不到脉冲信号,将在MAX70S的RESTE端产生高电平,产生复位信号,将单片机复位,迫使程序复位到入口处。针对AT89C52硬件资源比拟丰富,考虑采用直接方式设计键盘电路,而且可以简化电路。键盘采用4个开关直接控制。开关的一段通过电阻连接电源和AT89C52的P10P13管脚,而另一端接地。由于P10P13是低电平工作,当不同的开关接通时,根据收集到不同端口是高还是低电平,来执行相应的按键子程序。考虑到使用LC

4、D具有较强的表现才能和丰富的表现方式,所以扩展了32K的EPROM27256。是为实现产品晋级,完成丰富菜单,强大功能,表现动画预备的。12864液晶显示器LCO采用直接访问方式,直接访问方式是把内置T6963C控制器的液晶显示模块作为存储器或者I/O设备直接挂在单片机的总线上。模块的数据线接单片机的数据总线上,片选及存放器选择信号线由单片机的地址总线提供,读和写操纵由单片机的读写操纵信号控制。按口电路如图2所示,在图中使用了地址线AS作为模块的存放器选择线C/D,使用地址线A15作为模块操纵的片选线;模块的VO端所接的电位器是作为液晶驱动电源的调节器,调节显示的比照度。使用该种连接方式,不用

5、考虑T6963C的时序图,不用对LCD的管脚进展单独的操纵来知足时序,就像读写外部RAM一样,笔者以为比采用要在程序中实现时序的间接访问连接方式方便。考虑到在常温下,LCD的额定电流为0。4ma所需的功率很小,再加上RS232串口集成电路MAX232有两路发送器、两路转换器,使用其中一套完成电平转换用来通讯,另一套正好用来产生-10V,该电压由MAX232的14端供LCD显示画面使用。三、软件设计局部下面介绍软件局部,主要完成一下功能按键的查询和响应、画面的显示和刷新通过MOOBUS协议完成数据的接收和传输通讯。软件构造明晰,按模块分为三大块主程序局部、T0定时中断、串口中断局部。1主程序局部

6、主程序流程图如图3所示,主要完成一些初始参数的设定,其中LCD的初始化包括:液晶屏的尺寸光标的位置和外形等这局部程序在购置LCD时厂家会附带的,根据需要修改一下即可知足要求;还有就是将需要显示的汉字进展编码。定时器使用的是T0选择方式1,采用50ms中断查询按键,考虑到还有串口中断,使用了默认的中断优先级,即T0中断高于串口中断。这种安排已通过试验调试。在等待中断局部安排了循环执行喂狗程序目的是在程序正常执行时起到“看门狗的作用,在等待中断经过中系统又不以为是“死机。main:Icallclearmemory;清内存Icallinitlcd;初始化Icdmovsp,#stackpointer;

7、堆栈为65hmovtmod.#21h:t0方式1,t1方式2movradixcursor.#10hmovcurrentpagenumber,#01h;指定初始页号为1movpagenumber,currehtpagenumbersetbessetbeamovth1,#Ofdh;设定波特率9600bpsmovtl1.#Ofdhsetbtr1;启动定时器t1movscoh.#Od0hmov2ch,用来辅助发送mov2bh.#10hIcallsetuptimer0;初始化定时器t0,并启动t0setbrenIcallchaxuhsj;发送查询命令Icallshowpage;显示页面dieloop:I

8、callfeeddog;执行喂狗程序jmpdieloop;循环等待中断2T0定时中断局部流程图如图4所示,这局部主要功能是完成按键的查询,并转去执行相应的子程序本系统中一共有四个编程键,依次可实现修改数据、增加值、减少值和翻页功能。当我们按下修改键后即光标被激活修改键可以用来挪动光标位置此时按增加键和减少键可以分别增加和减少数值。其中翻页键是一个复用键假如直接按翻页键不激活光标,那么它的功能就是在不同的页面之间切换,并从现场采集各页数据并显示到LCD上:而当光标处在被激活状态下时,按下翻页键就可以向现场控制器如DSP发送数据到达控制目的这种“一键复用的设计,在电子商品中十分常见通过软件的设计减

9、少了按键的数目,是一个比拟有实际价值的设计已被广泛使用。键盘采用50ms定时中断设计,一般人手按键的起落时差远大于50ms所以可以知足设计要求而且在后面软件局部进展了去抖动,等待按键抬起功能的设计。timer0int:pushdphpushdplpushaccpushpswmovthi0。#4bhmovtl0。#Dfdhclrtr0;关定时器movp1,Offh;置p1口为输入状态mova,p1;读按键eplaanda,#00001111b;屏蔽高4位jzgoret00;无键按下movpgbkey,aIcalldelay;有键按下delay10ms去抖动Icallwait;等待按键抬起Ical

10、lseankey;转去执行相应的按键子程序goret00:setbtr0;开定时器poppswpopaccpopdplpopdph3串口中断局部这局部的主要功能是通过MODBUS协议完成数据的查询和发送。先对MODBUS做个简单的介绍该协议通讯使用主从技术,即仅主设备能初始化传输查询其它设备从设备,根据主设备查询提供的数据作出相应反响。按传输形式分为ASCII和RTU方式。本设计采用RTU方式。这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。每个消息必须以连续流的方式传输。MODBUS协议建立了主设备查询的格式设备地址、功能代码、所有要发送的数据、错误检测域从设备回应

11、消息也由MODBUS协议构成,包括确认要行动的域、任何要返回的数据和错误检测域。假如在消息接收经过中发生错误或者从设备不能执行其命令,从设备将建立错误消息并把它作为回应发送出去。查询查询消息中的功能代码告之被选中的从设备要执行何种功能数据段包含了从设备要执行功能的任何附加信息例如功能代码03是要求从设备读保持存放器并返回它们的内容。数据段必须包含要告之从设备的信息:从何存放器开场读及要读的存放器数目错误检测域为从设备提供了一种验证消息内容是否正确的方法。回应:假如从设备产生正常的回应,在回应消息中的功能代码是在查询消息中的功能代码的回应数据段包括了从设备采集的数据:像存放器值或者状态。假如有错

12、误发生功能代码将被修改以用于指出回应消息是错误的,同时数据段包含了描绘此错误信息的代码。举一个关于功能码03H的例子。主站询问报文格式:从站应答格式:serialportint:pushdphpushdplpushaccpushpswjbcri,receiveIcallchaxunsj;发送查询命令sjmpreturnreceive:movr0,2bh;指定用来存接收数据的地址指针mova,sbufallclrriallmovr0,ainc2bhmova,2bhIcallcrc;进展crc校验Icallshowpagereturn:poppswpopaccpopdplpopdphreti笔者使用了Modbusslave软件仿真下位机,模拟MOD-BUS的从设备。通过该软件,用所设计人机界面可以读取详细设备的详细各类存放器的数据,同样可以写数据到指定设备中指定的各类存放器中,这样就完成了数据的接收和传送。0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁