位置:51电子网 » 技术资料 » 其它综合

基于嵌入式PLC芯片组多路模拟量PLC开发

发布时间:2007/8/30 0:00:00 访问次数:681

如今工业控制产品已发展到一个追求个性化、差异化的阶段。传统的PLC产品已经无法满足更加细分化的市场需求,为了满足这种需求,出现了嵌入式PLC产品。  

一、嵌入式PLC   

嵌入式PLC是将PLC系统软件构建于控制器内,根据用户控制需要定制硬件,以PLC的应用方式解决对象控制问题的PLC。它由两部分组成:嵌入式PLC系统软件和芯片组  

1、嵌入式PLC系统软件  

嵌入式PLC系统软件将PLC语言(梯形图语言)、CAN总线嵌入到单片机中,使单片机的产品开发从使用汇编语言变为使用PLC梯形图语言,并具有CAN总线的互连特性。  

该系统软件具有以下特点:1.以梯形图语言为内核,添加了中断管理系统,能实现PLC无法实现的硬实时操作;2.强化运算能力,增加了CANBUS函数库、浮点数库、专家自整定PID、嵌入式WEB等,丰富了PLC的功能;3.提供开放式扩展结构,支持第三方开发扩展单元的接线;4.增加了网络互连功能,在远程端加载专用浏览器后,即可实现远程监控。  

系统软件包括三个部分。  

①嵌入式PLC内核: 它完成实时任务调度、梯形图语言解释、执行、通讯等基本功能,并提供二次开发驱动接口;  

②二次开发驱动程序 通过系统软件提供的外挂任务,使用内核开发各种面向具体对象个性化、差异化的驱动程序;  

③终端应用程序 指面向工艺流程控制的梯形图语言程序   

2、嵌入式PLC芯片组  

EASY CORE 1.00 是一个加载了嵌入式PLC系统软件的核心芯片组,作为一款加载了系统软件的硬件平台,可以用来设计通用和专用PLC。  

1)芯片组基本性能:  

①供电:+5V 200mA,RAM掉电保护5年。  

②CPU: C8051F040。  

③嵌入扩展能力  

·32 I/O:可复用成SPI、I2C接口及外中断、外计数、AD等。  

·4 AD: 12位精度,100 KPS。  

·2 DA: 12位精度,100 KPS。  

④ 通信接口  

·CANBUS:系统软件管理,使用工具软件CANSet构建CANBUS总线网络。  

·UART0:系统软件管理,用于梯形图编程、监控,支持人机界面及用户驱动程序下载。  

·UART1:系统软件管理,用于下载CANBUS网络参数、构建RS485网络及支持第三方设备互连。  

二、应用开发  

基于加载了系统软件的核心芯片组,我们可以根据工艺需要来开发自己的嵌入式PLC产品。下面就介绍基于嵌入式PLC芯片组开发的16路输入的模拟量PLC产品(可输入标准信号或热电偶信号)。  

1、硬件设计  

硬件整体结构图如下:  

AI0是芯片组内的一个AD转换通道,P1.0—P1.4作为模拟开关的通道控制线来进行16个模拟信号通道间的切换。     

(1)信号采集电路  

用AD公司的高精密放大器OP07构成模拟信号放大电路,OP07具有低输入偏移电压(10uV)、低漂移电压(0.2uV/℃)和宽范围的供电电压(±3V-±18V), 可以很好地满足该产品的要求。在这里OP07由±5V供电,R18、R79作为调零电阻,输出电压由下式给出:Vout=Vin(1+R98/R56)。     

(2)信号选择电路 


选择16通道的模拟开关CD4067构成信号选择电路,A、B、C、D、INH接到芯片组的P1.0-P1.4引脚,做为模拟开关的通道选择控制信号。OUT引脚接到芯片组的AIN0,即第一个AD转换通道。


2、软件开发  


嵌入式PLC是基于Cygnal公司的C8051f040芯片开发的,所以二次程序的开发使用51汇编语言。开发选择的编译器是KEIL C51,因为它可以生成我们所需要的.HEX文件。  


内核留出了七个用户嵌入程序接口,我们只需要充分理解各个接口的功能就可了进行二次开发了,需要熟悉如下内容:a、内核功能b、内核结构c、内核任务管理d、内核存储空间分配。【1】由于系统软件中已经加入了232通信、485通信和CAN通信的功能,所以16路模拟量PLC的二次驱动软件的开发主要集中在模拟量的AD转换和PLC资源区中AD值的实时刷新上。  


(1)程序规划  


T4中断:完成AD转换和16个通道的切换程序  


USER_SCAN:PLC资源区中AD值的刷新。  


AD转换过程如下:每一通道连续采样16次,采样完后得到累加和,然后启动下一通道的AD转换。  


PLC资源区中AD值的刷新过程如下:在梯形图扫描周期结束时进行,把各路AD值的累加和求平均值后放入PLC的资源区的对应位置处。  


(2)程序代码 


 


3、驱动程序的嵌入  


在KEIL C51中编译上述程序。使用下载工具软件“DOWNHEX”,把生成的.HEX文件通过串口下载到芯片组的固定地址处,使得内核可以调用它,从而完成二次驱动程序的开发。到此,16路模拟量PLC的开发工作基本完成。  


三、功能介绍 

如今工业控制产品已发展到一个追求个性化、差异化的阶段。传统的PLC产品已经无法满足更加细分化的市场需求,为了满足这种需求,出现了嵌入式PLC产品。  

一、嵌入式PLC   

嵌入式PLC是将PLC系统软件构建于控制器内,根据用户控制需要定制硬件,以PLC的应用方式解决对象控制问题的PLC。它由两部分组成:嵌入式PLC系统软件和芯片组  

1、嵌入式PLC系统软件  

嵌入式PLC系统软件将PLC语言(梯形图语言)、CAN总线嵌入到单片机中,使单片机的产品开发从使用汇编语言变为使用PLC梯形图语言,并具有CAN总线的互连特性。  

该系统软件具有以下特点:1.以梯形图语言为内核,添加了中断管理系统,能实现PLC无法实现的硬实时操作;2.强化运算能力,增加了CANBUS函数库、浮点数库、专家自整定PID、嵌入式WEB等,丰富了PLC的功能;3.提供开放式扩展结构,支持第三方开发扩展单元的接线;4.增加了网络互连功能,在远程端加载专用浏览器后,即可实现远程监控。  

系统软件包括三个部分。  

①嵌入式PLC内核: 它完成实时任务调度、梯形图语言解释、执行、通讯等基本功能,并提供二次开发驱动接口;  

②二次开发驱动程序 通过系统软件提供的外挂任务,使用内核开发各种面向具体对象个性化、差异化的驱动程序;  

③终端应用程序 指面向工艺流程控制的梯形图语言程序   

2、嵌入式PLC芯片组  

EASY CORE 1.00 是一个加载了嵌入式PLC系统软件的核心芯片组,作为一款加载了系统软件的硬件平台,可以用来设计通用和专用PLC。  

1)芯片组基本性能:  

①供电:+5V 200mA,RAM掉电保护5年。  

②CPU: C8051F040。  

③嵌入扩展能力  

·32 I/O:可复用成SPI、I2C接口及外中断、外计数、AD等。  

·4 AD: 12位精度,100 KPS。  

·2 DA: 12位精度,100 KPS。  

④ 通信接口  

·CANBUS:系统软件管理,使用工具软件CANSet构建CANBUS总线网络。  

·UART0:系统软件管理,用于梯形图编程、监控,支持人机界面及用户驱动程序下载。  

·UART1:系统软件管理,用于下载CANBUS网络参数、构建RS485网络及支持第三方设备互连。  

二、应用开发  

基于加载了系统软件的核心芯片组,我们可以根据工艺需要来开发自己的嵌入式PLC产品。下面就介绍基于嵌入式PLC芯片组开发的16路输入的模拟量PLC产品(可输入标准信号或热电偶信号)。  

1、硬件设计  

硬件整体结构图如下:  

AI0是芯片组内的一个AD转换通道,P1.0—P1.4作为模拟开关的通道控制线来进行16个模拟信号通道间的切换。     

(1)信号采集电路  

用AD公司的高精密放大器OP07构成模拟信号放大电路,OP07具有低输入偏移电压(10uV)、低漂移电压(0.2uV/℃)和宽范围的供电电压(±3V-±18V), 可以很好地满足该产品的要求。在这里OP07由±5V供电,R18、R79作为调零电阻,输出电压由下式给出:Vout=Vin(1+R98/R56)。     

(2)信号选择电路 


选择16通道的模拟开关CD4067构成信号选择电路,A、B、C、D、INH接到芯片组的P1.0-P1.4引脚,做为模拟开关的通道选择控制信号。OUT引脚接到芯片组的AIN0,即第一个AD转换通道。


2、软件开发  


嵌入式PLC是基于Cygnal公司的C8051f040芯片开发的,所以二次程序的开发使用51汇编语言。开发选择的编译器是KEIL C51,因为它可以生成我们所需要的.HEX文件。  


内核留出了七个用户嵌入程序接口,我们只需要充分理解各个接口的功能就可了进行二次开发了,需要熟悉如下内容:a、内核功能b、内核结构c、内核任务管理d、内核存储空间分配。【1】由于系统软件中已经加入了232通信、485通信和CAN通信的功能,所以16路模拟量PLC的二次驱动软件的开发主要集中在模拟量的AD转换和PLC资源区中AD值的实时刷新上。  


(1)程序规划  


T4中断:完成AD转换和16个通道的切换程序  


USER_SCAN:PLC资源区中AD值的刷新。  


AD转换过程如下:每一通道连续采样16次,采样完后得到累加和,然后启动下一通道的AD转换。  


PLC资源区中AD值的刷新过程如下:在梯形图扫描周期结束时进行,把各路AD值的累加和求平均值后放入PLC的资源区的对应位置处。  


(2)程序代码 


 


3、驱动程序的嵌入  


在KEIL C51中编译上述程序。使用下载工具软件“DOWNHEX”,把生成的.HEX文件通过串口下载到芯片组的固定地址处,使得内核可以调用它,从而完成二次驱动程序的开发。到此,16路模拟量PLC的开发工作基本完成。  


三、功能介绍 

相关IC型号

热门点击

 

推荐技术资料

罗盘误差及补偿
    造成罗盘误差的主要因素有传感器误差、其他磁材料干扰等。... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!