基于嵌入式PLC芯片组开发PLC的方法_自动化专业毕业论文-经管之家官网!

人大经济论坛-经管之家 收藏本站
您当前的位置> 毕业论文>>

自动化专业论文

>>

基于嵌入式PLC芯片组开发PLC的方法_自动化专业毕业论文

基于嵌入式PLC芯片组开发PLC的方法_自动化专业毕业论文

发布:经管之家 | 分类:自动化专业论文

关于本站

人大经济论坛-经管之家:分享大学、考研、论文、会计、留学、数据、经济学、金融学、管理学、统计学、博弈论、统计年鉴、行业分析包括等相关资源。
经管之家是国内活跃的在线教育咨询平台!

经管之家新媒体交易平台

提供"微信号、微博、抖音、快手、头条、小红书、百家号、企鹅号、UC号、一点资讯"等虚拟账号交易,真正实现买卖双方的共赢。【请点击这里访问】

提供微信号、微博、抖音、快手、头条、小红书、百家号、企鹅号、UC号、一点资讯等虚拟账号交易,真正实现买卖双方的共赢。【请点击这里访问】

基于嵌入式PLC芯片组开发PLC的方法_自动化专业毕业论文摘要:介绍利用嵌入式PLC芯片组开发PLC产品的方法。整个开发过程全部是自主开发,易学易用,符合国人编程及使用习惯。关键词:嵌入式PLC芯片组PLC开发嵌入式PLC ...
免费学术公开课,扫码加入


基于嵌入式PLC芯片组开发PLC的方法_自动化专业毕业论文

 

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

1嵌入式PLC芯片组介绍  
⒈1嵌入式PLC芯片组原理框图
      
1.2嵌入式PLC芯片组技术性能指标
① 供电:+5V 200mA,RAM有掉电保护功能。
② CPU: C8051F040。
③ 引脚功能:
 32 个I/O、4 个AD、 2 个DA
 ④ 通信接口
 CANBUS:整个CAN总线网络互联全由CANSet 软件来实现。设置起来十分简便。
 UART0:可用于梯形图程序及上位机的监控,还可以与人机界面通讯。
 UART1:可用于下载CANSET软件生成的CAN网络配置文件,可以通过RS485网络连接第三方设备,如PC、三菱PLC等等。
 2 、 24点开关量PLC的开发
       采用嵌入式PLC芯片组构建单片机嵌入系统,设计方首先要有满足设计自身要求的PLC硬件,另外还要用C或汇编语言编少量的接口驱动程序。
      2.1硬件设计
        ⑴功能特点:
        ①16点输入,8点输出的开关型通用PLC。
        ②支持CAN总线网络,可作CAN网络的主站或从站。
        ③支持梯形图编程,可连接计算机或人机界面。
        ④支持RS485网络,可作RS485网络的主站或从站。
        ⑵原理图
原理大体可分为四大部分:即输入、输出、指示灯、通信四大部分
开关量的输入部分原理图

        
 
 
其中X01是开关量的一个输入点,经过光电隔离后,出来的信号为AX0,有多少个输入,就有多少个这种电路。单片机常常用到I/O的扩展功能,在此我们也要用到这一功能,以增加I/O口。由于简单输入接口扩展只解决数据输入的缓冲问题,所以在这里的扩展依旧使用典型74244作为扩展芯片。


 
 
 
开关量输出部分原理图


指示灯部分
有了输入、输出,怎样知道输入已接通?或者输出已经输出?人们最常用的办法是用指示灯来指示,一看一目了然。
在此我们不妨也来借鉴一下。


     
通信部分
 嵌入式芯片组中有两个串口和一个CAN通信口。串口是RS-232接口。部分电路原理图如下:

 

在构建原理图时,一定注意各个芯片相连时的电平匹配问题。
 ⒉2软件开发
    利用嵌入式PLC芯片组做PLC产品,除了硬件之外,还要加载软件。软件编程环境是KEIL C51中的Uvision2 。
Uvision2是KEIL C51 for windows 的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。
   整个嵌入式PLC产品的软件包括三个部分。
   ⑴内核程序(嵌入式PLC内核)
     内核的功能体现在梯形图语言、通信及用户驱动程序接口三个方面。
   ⑵驱动程序的嵌入
     用户驱动程序包括头文件部、中断入口调用矢量地址部分和用户程序部分。其中头文件部分和中断入口调用矢量地址部分程序基本是大同小异,主要是用户程序的嵌入部分。内核给出了七个用户嵌入程序的接口,我们只需要充分理解各个接口的功能就可进行嵌入程序的开发了,下面以24点开关量驱动程序的嵌入为例,对用户程序部分作简单的说明。
 *******************USER_CONFIG*********************
 这部分主要是对用户I/O进行配置。
 例:USER_CONFIG:  
  MOV   SFRPAGE,#0FH
      MOV   P3MDOUT,#0FFH
      MOV   P2MDOUT,#0FFH
      ANL      P4MDOUT,#0F0H
      ORL   P4MDOUT,#0FH
      ORL      P0MDOUT,#0F0H
      ORL   P0MDOUT,#0F4H
          RET
 *******************USER_START**********************
 这部分是用户上电初始化程序代码。
 例:USER_START:
 MOV   DPTR,#RAM_PX+1
     MOV  A,#00H
     MOVX  @DPTR,A
 MOV  INPUT_CNT,#08 ;输入口采样次数指针 
     MOV      LAMP_CNT,#00H  ;指示灯组数指针
           RET
 ********************INIT_RUN*********************    
         这部分是用户运行初始化程序代码。如果没有可直接返回。
 例:INIT_RUN:
     RET
 ********************INIT_SET*********************
 这部分是用户设置初始化程序代码。
 例:INIT_RUN:
          MOV   DPTR,#XLAMP
                MOV      A,#00H
       MOVX      @DPTR,A
         MOV   DPTR,#RAM_PY+1
       MOV   A,#00H
       MOVX   @DPTR,A
       LCALL  SCAN
     RET
 ********************USER_STEP*********************
 这部分是用户每步执行程序。如果没有可直接返回。
 例: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,@DPTR
       MOV   P0,A
输入口的采样如下:
          MOV    A,INPUT_CNT
      ANL    A,#0FH
      JNZ    USER_INTMS1  ;八次采样结束
 RET      
 USER_INTMS1:DEC   A   
    ```````MOV   B,#02H
    ```````MUL   AB
    ```````MOV   DPTR,#XINPUT
    ```````ADD   A,DPL
    ```````MOV   DPL,A
    ```````MOV   A,DPH
    ```````ADDC  A,B
    ```````MOV   DPH,A 
   
    MOV   SFRPAGE,#0FH
    ORL     P4,#0CH
    ANL   P4,#0FBH  ;P4.2片选
       LCALL  DELAY
    MOV   A,P1
    MOVX  @DPTR,A  ;
    ORL   P4,#04H
    ANL   P4,#0F7H  ;P4.3片选 
    MOV   A,P1
    INC   DPTR
    MOVX  @DPTR,A    ;保存16个输入口采样值
    ORL        P4,#08H
    DEC   INPUT_CNT
    RET

DELAY:  NOP
    NOP
    NOP
    RET
********************USER_SCAN**********************
 这部分是用户演算周期扫描程序代码。如每个输入口的8次采样值的处理、输出的刷新、输入输出指示灯的赋值都可在此完成。
   例:输出口的刷新:
 MOV      DPTR,#RAM_PY+1
       MOVX  A,@DPTR
         CPL      A
 MOV        P3,A 
     RET               
RAM_PY+1的值与输出继电器物理地址一一对应并且输出。其中P3口是控制继电器的。
以上便是驱动程序的嵌入。
 综上所述,整个嵌入过程主要是完成三件事情:a、输入采样并对采样进行处理,处理后的结果存放到RAM_PX+1、 RAM_PX。每个开关量的输入与输入指示灯的物理地址的一一对应并保持刷新。b、输出的刷新。输出刷新的值是从RAM_PY+1 、RAM_PY中取的。同时开关量的输出与输出指示灯的物理地址同样需要一一对应。c、对输入输出指示灯的刷新。
 ⑶梯形图程序。(略)
 由于内核的系统软件中已经加入了232通信、485通信和CAN通信的功能,所以通信功能也就水到渠成了。
3结束语
利用嵌入式芯片组做嵌入式PLC产品,设计方只需用C或汇编 编少量的接口驱动程序——不到源软件设计工作量的10%,且硬件上内核的电磁兼容性有保障,半个月即推出新品。嵌入式PLC芯片组一定会有一个美好的未来!
 
参考文献:
 1. 黄石科威自控有限公司《嵌入式PLC原理与应用》
 2. 沈阳新华龙有限公司《C8051F040数据手册》
 3. 黄石科威自控有限公司《EASY编程手册》
 4.《KEIL C51开发环境使用手册》

「经管之家」APP:经管人学习、答疑、交友,就上经管之家!
免流量费下载资料----在经管之家app可以下载论坛上的所有资源,并且不额外收取下载高峰期的论坛币。
涵盖所有经管领域的优秀内容----覆盖经济、管理、金融投资、计量统计、数据分析、国贸、财会等专业的学习宝库,各类资料应有尽有。
来自五湖四海的经管达人----已经有上千万的经管人来到这里,你可以找到任何学科方向、有共同话题的朋友。
经管之家(原人大经济论坛),跨越高校的围墙,带你走进经管知识的新世界。
扫描下方二维码下载并注册APP
本文关键词:

人气文章

1.凡人大经济论坛-经管之家转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
经管之家 人大经济论坛 大学 专业 手机版