可编程逻辑plc控制设计

可编程逻辑plc控制设计

ID:41032831

大小:4.78 MB

页数:30页

时间:2019-08-14

可编程逻辑plc控制设计_第1页
可编程逻辑plc控制设计_第2页
可编程逻辑plc控制设计_第3页
可编程逻辑plc控制设计_第4页
可编程逻辑plc控制设计_第5页
资源描述:

《可编程逻辑plc控制设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、1、需求分析21.1项目概述21.2本设计的需求与意义31.3本设计的前景和特色42本实训的概要设计52.1硬件电路52.2软件的使用与程序的编写72.2.1上位机对梯形图的录入72.2.2通信模块程序的编写82.2.3下位机梯形图解释器程序的编写122.2.4整体系统框架的搭建,以及LCD显示与按键程序的编写163、详细设计173.1程序完成对uC/OS-II操作系统的移植183.2.1OS_CPU.H的编写193.2.2OS_CPU_C.C的编写193.2.3OS_CPU_A.ASM203.

2、2在系统中创建各模块并在主函数中添加各摸块任务。213.3在系统中编写key.c和display.c文件程序224、调试过程285、实训总结及感想305.1本次实训体会:305.2实训总结312.2软件的使用与程序的编写2.2.1上位机对梯形图的录入上位机编程软件在PC机上实现,主要实现编程软件选择梯形图和指令表作为编程语言,并将其录入到相应软件中,以便下载到下位机中,对工程项目进行相应的控制。利用MFC创建用户界面,使其具有梯形图的录入和修改,助记符语言的录入和修改,并且能实现他们的互相转化的

3、功能。并且能够实现通过串口向下位机下载。处理流程:用户首先要创建一个新的文件,选择是通过助记符语言或者是梯形图语言。如果是选择梯形图语言,在标题栏下方就会有一些符号的选择。当录入完成之后可以保存,并且能够实现两种语言的转换。流程图如下:创建新文件输入语言选择用户输入下位机PC读取用户输入一级代码二级代码保存到电脑语言转换梯形图录入:在编辑框的左边和右边分别有两个电源线,在两个电源线的中间进行梯形图元件的录入,包括原件的插入、删除、保存等操作。用户户在编辑区对各个梯形图元件进行属性的设置和改变。用

4、户进行梯形图编辑的时候,各个梯形之间空出一行用来隔开。各个梯级主路之间空出一行用来隔开。各个梯级有ID号进行标识,ID号依次递增且唯一。每个梯级包含一个梯级主路,梯级主路带有一个左电源线,常开触点,常开线圈和右电源线,它们之间有很多的水平连线,用户在常开触电与常开线圈之间添加其他元件并联关系构成新的梯级,当然用户也可以将这个常开触点和常开线圈删除继而添加自己需要的元件。元件的编辑属性对话框中包含用户对元件名称,数据类型,变量范围,物理地址等属性的编辑。助记符的录入:可以实现一些助记符的录入,以文

5、本的形式进行录入。指令包括LD,LDI,OR,ORI,OUT等。梯形图转化为一级代码:首先将梯形图界面划分成大小相同的网格,如下图所示,每个网格包含一个梯形图基本元件或者为空,每个网格信息保存在一个结构体对象中,结构体数组就构成了一级代码。一级代码是结构体数组的形式,由于网格中存在大量的“空”元件,这样一级代码中就包含很多零元素,如果以数组的形式保存在计算机中必然浪费很大的空间。同时考虑到串行化问题,先采用双向链表结构,链表中每一个节点是一个类对象,它存储一个梯形图元件的信息,这样节点中就不包含

6、零元素,利用串行化方法将链表信息保存在计算机中,这样计算机可以节约很大的硬盘空间。当用户完成输入后进行下载时,双向链表先转为一级代码,然后经过解算过程,将一级代码转换为二级代码下载到下位机STM32中。解算:一级代码经过解算转化成二级代码才能下载到下位机STM32中,二进制代码指令用四个字节组成,前两个字节代表命令种类,后两个字节代表目标设备。2.2.2通信模块程序的编写上位机与下位机通信程序的编写上位机向下位机的数据发送:代码要向下位机通过串口发送,包括PC机的串口通信和STM32的串口通信部

7、分。首先上位机向下位机发送一个命令ENQ(0x05H),当下位机准备好接受数据后,回复命令ACK。之后PC开始发送数据。在VC中,有以下几种方式可以实现串口的通信:方法一:使用VC++提供的串行通信控件MSComm首先,在对话框中创建通信控件,若Control工具栏中缺少该控件,可通过菜单Project-->AddtoProject-->ComponentsandControl插入即可,再将该控件从工具箱中拉到对话框中。此时,你只需要关心控件提供的对Windows通讯驱动程序的API函数的接口。

8、换句话说,只需要设置和监视MSComm控件的属性和事件。方法二:在单线程中实现自定义的串口通信类。主要运用ReadFile()与WriteFile()API函数。方法三:多线程下实现串行通信。在很多工业控制系统中,常通过扩展串口连接多个外设,各外设发送数据的重复频率不同,要求后台实时无差错捕捉,采集,处理,记录各端口数据,这就需要在自定义的串行通信类中创建端口监视线程,以便在指定的事件发生时向相关的窗口发送通知消息。通信协议:通过RS232进行通信,波特率为9600bps。PC机与下位机通信协议

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。