基于嵌入式plc芯片组开发plc方法

上传人:Bod****ee 文档编号:47549359 上传时间:2018-07-02 格式:DOC 页数:8 大小:1.03MB
返回 下载 相关 举报
基于嵌入式plc芯片组开发plc方法_第1页
第1页 / 共8页
基于嵌入式plc芯片组开发plc方法_第2页
第2页 / 共8页
基于嵌入式plc芯片组开发plc方法_第3页
第3页 / 共8页
基于嵌入式plc芯片组开发plc方法_第4页
第4页 / 共8页
基于嵌入式plc芯片组开发plc方法_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《基于嵌入式plc芯片组开发plc方法》由会员分享,可在线阅读,更多相关《基于嵌入式plc芯片组开发plc方法(8页珍藏版)》请在金锄头文库上搜索。

1、 基于嵌入式基于嵌入式PLCPLC芯片组开发芯片组开发PLCPLC的方法的方法摘要:摘要:介绍利用嵌入式 PLC 芯片组开发 PLC 产品的方法。整个开发过程全部是自主开发,易学易用,符合国人编程及使用习惯。关键词:关键词:嵌入式 PLC 芯片组 PLC 开发嵌入式 PLC 芯片组是一个加载了嵌入式 PLC 软件平台的核心芯 片组,具备 PLC 功能和 CAN,RS232/485 通信功能,能够完成 常规过程控制的控制模块。在其基础上,能轻松、快速地设 计出 PLC 产品。下面就以我用嵌入式 PLC 芯片组开发的 24 点 开关量 PLC 为例,介绍 PLC 的开发方法。1 1 嵌入式嵌入式

2、PLCPLC 芯片组介绍芯片组介绍 11 嵌入式嵌入式 PLCPLC 芯片组原理框图芯片组原理框图1.21.2 嵌入式嵌入式 PLCPLC 芯片组技术性能指标芯片组技术性能指标 供电:+5V 200mA,RAM 有掉电保护功能。 CPU: C8051F040。 引脚功能: 32 个 I/O、4 个 AD、2 个 DA 通信接口 CANBUS:整个 CAN 总线网络互联全由 CANSet 软件来实现。 设置起来十分简便。 UART0:可用于梯形图程序及上位机的监控,还可以与人 机界面通讯。 UART1:可用于下载 CANSET 软件生成的 CAN 网络配置文件,2可以通过 RS485 网络连接第

3、三方设备,如 PC、三菱 PLC 等等。 2 2 、 2424 点开关量点开关量 PLCPLC 的开发的开发采用嵌入式 PLC 芯片组构建单片机嵌入系统,设计方首先要 有满足设计自身要求的 PLC 硬件,另外还要用 C 或汇编语言 编少量的接口驱动程序。2.12.1 硬件设计硬件设计功能特点功能特点:16 点输入,8 点输出的开关型通用 PLC。支持 CAN 总线网络,可作 CAN 网络的主站或从站。支持梯形图编程,可连接计算机或人机界面。支持 RS485 网络,可作 RS485 网络的主站或从站。原理图原理图 原理大体可分为四大部分:即输入、输出、指示灯、通信四 大部分 开关量的输入部分原理

4、图开关量的输入部分原理图其中 X01 是开关量的一个输入点,经过光电隔离后,出来的信号为 AX0,有多少个输入,就有多少个这种电路。单片机常常用到 I/O 的 扩展功能,在此我们也要用到这一功能,以增加 I/O 口。由于简单 输入接口扩展只解决数据输入的缓冲问题,所以在这里的扩展依旧 使用典型 74244 作为扩展芯片。3 开关量输出部分原理图开关量输出部分原理图 指示灯部分指示灯部分 有了输入、输出,怎样知道输入已接通?或者输出已经输 出?人们最常用的办法是用指示灯来指示,一看一目了然。在此我们不妨也来借鉴一下。4 通信部分通信部分 嵌入式芯片组中有两个串口和一个 CAN 通信口。串口是 R

5、S-232 接口。部分电路原理图如下:在构建原理图时,一定注意各个芯片相连时的电平匹配 问题。 22 软件开发软件开发利用嵌入式 PLC 芯片组做 PLC 产品,除了硬件之外,还 要加载软件。软件编程环境是 KEIL C51 中的 Uvision2 。 Uvision2 是 KEIL C51 for windows 的集成开发环境 (IDE) ,可以完成编辑、编译、连接、调试、仿真等整 个开发流程。整个嵌入式 PLC 产品的软件包括三个部分。内核程序(嵌入式内核程序(嵌入式 PLCPLC 内核)内核)内核的功能体现在梯形图语言、通信及用户驱动程序 接口三个方面。驱动程序的嵌入驱动程序的嵌入用户

6、驱动程序包括头文件部、中断入口调用矢量地址 部分和用户程序部分。其中头文件部分和中断入口调用 矢量地址部分程序基本是大同小异,主要是用户程序的 嵌入部分。内核给出了七个用户嵌入程序的接口,我们 只需要充分理解各个接口的功能就可进行嵌入程序的开 发了,下面以 24 点开关量驱动程序的嵌入为例,对用户 程序部分作简单的说明。5*USER_CONFIG* 这部分主要是对用户 I/O 进行配置。 例:USER_CONFIG: MOVSFRPAGE,#0FHMOVP3MDOUT,#0FFHMOVP2MDOUT,#0FFHANL P4MDOUT,#0F0HORLP4MDOUT,#0FHORL P0MDOU

7、T,#0F0HORLP0MDOUT,#0F4HRET *USER_START* 这部分是用户上电初始化程序代码。 例:USER_START: MOVDPTR,#RAM_PX+1 MOVA,#00H MOVXDPTR,A MOVINPUT_CNT,#08;输入口采样次数指 针 MOV LAMP_CNT,#00H ;指示灯组数指针RET *INIT_RUN* 这部分是用户运行初始化程序代码。如果没有可直接返回。例:INIT_RUN:RET *INIT_SET* 这部分是用户设置初始化程序代码。 例:INIT_RUN:MOVDPTR,#XLAMPMOV A,#00HMOVX DPTR,AMOVDPT

8、R,#RAM_PY+1MOVA,#00HMOVXDPTR,ALCALLSCAN RET *USER_STEP*6这部分是用户每步执行程序。如果没有可直接返回。 例:USER_STEP:RET *USER_TMS* 这部分是用户 2.5MS 定时运行程序代码。24 点开关量 PLC 输入的采样及指示灯的刷新这是在这里完成的。 指示灯的刷新: MOV DPTR,#XLAMP ;XLAMP 是指示灯 的值 MOVX A,DPTR CPL A MOV P2,A ;P0、P2 口是控制 指示灯的。 INC DPTR MOVX A,DPTRMOV P0,A 输入口的采样如下:MOV A,INPUT_CNT

9、ANL A,#0FHJNZ USER_INTMS1 ;八次采样结束RET USER_INTMS1:DECAMOVB,#02HMULABMOVDPTR,#XINPUTADDA,DPLMOVDPL,AMOVA,DPHADDCA,B7MOVDPH,AMOVSFRPAGE,#0FH ORL P4,#0CH ANLP4,#0FBH;P4.2 片选LCALLDELAY MOVA,P1 MOVXDPTR,A ; ORLP4,#04H ANLP4,#0F7H;P4.3 片选 MOVA,P1 INCDPTR MOVXDPTR,A ;保存 16 个输入口采样 值 ORL P4,#08H DECINPUT_CNT

10、RETDELAY:NOP NOP NOP RET *USER_SCAN* 这部分是用户演算周期扫描程序代码。如每个输入口的 8 次采样值的处理、输出的刷新、输入输出指示灯的赋值都可在 此完成。例:输出口的刷新: MOV DPTR,#RAM_PY+1MOVXA,DPTRCPL A MOV P3,A RET RAM_PY+1 的值与输出继电器物理地址一一对应并且输出。其中 P3 口是控制继电器的。 以上便是驱动程序的嵌入。 综上所述,整个嵌入过程主要是完成三件事情:a、输入采 样并对采样进行处理,处理后的结果存放到 RAM_PX+1、 8RAM_PX。每个开关量的输入与输入指示灯的物理地址的一一对

11、 应并保持刷新。b、输出的刷新。输出刷新的值是从 RAM_PY+1 、RAM_PY 中取的。同时开关量的输出与输出指示灯的物理地址 同样需要一一对应。c、对输入输出指示灯的刷新。 梯形图程序。梯形图程序。 (略)(略) 由于内核的系统软件中已经加入了 232 通信、485 通信和 CAN 通信的功能,所以通信功能也就水到渠成了。 3 3 结束语结束语 利用嵌入式芯片组做嵌入式 PLC 产品,设计方只需用 C 或汇编 编少量的接口驱动程序不到源软件设计工作量的 10%,且 硬件上内核的电磁兼容性有保障,半个月即推出新品。嵌入式 PLC 芯片组一定会有一个美好的未来!参考文献: 1. 黄石科威自控有限公司嵌入式 PLC 原理与应用 2. 沈阳新华龙有限公司C8051F040 数据手册 3. 黄石科威自控有限公司EASY 编程手册 4 KEIL C51 开发环境使用手册

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

当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号