现在工控制产物已成长到一个追求个性化、差异化的阶段。传统的PLC产物已没法知足加倍细分化的市场需求,为了知足这类需求,泛起了嵌进式PLC产物。
1、嵌进式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 IO:可复用成SPI、I2C接口及外中断、外计数、AD等。 ·4 AD: 12位精度,100 KPS。 ·2 DA: 12位精度,100 KPS。
④ 通讯接口
·CANBUS:系统软件经管,使用工具软件CANSet构建CANBUS总线网络。 ·UART0:系统软件经管,用于梯形图编程、监控,支持人机界面及用户驱动法式下载。 ·UART1:系统软件经管,用于下载CANBUS网络参数、构建RS485网络及支持第三方装备互连。
2)芯片组原理框图
图1 芯片组原理框图
2、运用开发
基于加载了系统软件的焦点芯片组,我们可以凭据工艺需要来开发自己的嵌进式PLC产物。下面就介绍基于嵌进式PLC芯片组开发的16路输进的模拟PLC产物(可输进尺度旌旗灯号或热电偶旌旗灯号)。
1、硬件设计
硬件整体结构图以下:
图2 硬件整体结构图
AI0是芯片组内的一个AD转换通道,P1.0—P1.4作为模拟开关的通道控制线来进行16个模拟旌旗灯号通道间的切换。
(1)旌旗灯号收集电路
用AD公司的高细密放年夜器OP07组成模拟旌旗灯号放年夜电路,OP07具有低输进偏移电压(10uV)、低漂移电压(0.2uV℃)和宽范围的供电电压(±3V-±18V), 可以很好地知足该产物的要求。在这里OP07由±5V供电,R18、R79作为调零电阻,输出电压由下式给出:Vout=Vin(1+R98R56)。
图3 模拟旌旗灯号放年夜电路
(2)旌旗灯号选择电路
选择16通道的模拟开关CD4067组成旌旗灯号选择电路,A、B、C、D、INH接到芯片组的P1.0-P1.4引脚,做为模拟开关的通道选择控制旌旗灯号。OUT引脚接到芯片组的AIN0,即个AD转换通道。
图4 旌旗灯号选择电路图
2、软件开发
嵌进式PLC是基于Cygnal公司的C8051f040芯片开发的,所以二次法式的开发使用51汇编语言。开发选择的编译器是KEIL C51,由于它可以生成我们所需要的.HEX文件。
内核留出了七个用户嵌进法式接口,我们只需要充实理解各个接口的功能就可了进行二次开发了,需要熟悉以下内容:a、内核功能b、内核结构c、内核使命经管d、内核存储空间分配。由于系统软件中已加进了232通讯、485通讯和CAN通讯的功能,所以16路模拟PLC的二次驱动软件的开发主要集中在模拟的AD转换和PLC资本区中AD值的实时刷新上。
(1)法式计划
T4中断:完成AD转换和16个通道的切换法式
USER_SCAN:PLC资本区中AD值的刷新。
AD转换进程以下:每通道接连采样16次,采样完后获得累加和,然后启动下一通道的AD转换。
PLC资本区中AD值的刷新进程以下:在梯形图扫描周期竣事时进行,把各路AD值的累加和求平均值后放进PLC的资本区的对应位置处。
(2)法式代码
INIT_AD ;AD初始化 MOV SFRPAGE, #ADC0_PAGE MOV REF0CN, #07H ;内部参考电压输出到VERF;启动内部温度传感器 MOV AMX0CF, #00H ;单极性输进 MOV ADC0CF, #0B8H ;D7--D3=SYSCLK/采样时钟-1 ;采样转换时钟=1US ;D2--D0=GAIN ;000 GAIN=1 MOV ADC0CN, #90H ;启动AD采样 MOV AD_CHANNEL, #00H ;AD通道号,初值为0 MOV AD_COUNT, #00H ;16次采样次数计数。初值为0 RET SAMPLE_AD ;AD采样起头 MOV SFRPAGE, #ADC0_PAGE ;AD控制寄存器页 MOV A, AD_CHANNEL ;采样值的累加和是一个字基地址为#XAI,偏移地址为AD_CHANNEL RL A MOV DPTR, #XAI ;XAI寄存16次采样值的累加和 ADD A, DPL ;低字节相加 MOV DPL, A MOVX A, @DPTR MOV B, A MOV A, ADC0L CLR C ADDC A, B MOVX @DPTR, A INC DPTR ;高字节相加 MOVX A, @DPTR MOV B, A MOV A, ADC0H ANL A, #0FH ADDC A, B MOVX @DPTR, A ;#XAI中寄存花式为低字节、高字节 MOV SFRPAGE, #ADC0_PAGE ;AD控制寄存器页 MOV ADC0CN, #090H ;启动下次AD采样 INC AD_COUNT MOV A, AD_COUNT CLR C SUBB A, #16 JNC FILL_XAI_XAD ;当16次采样完成后,把XAI中16个采样和(2字节)寄存到XAD RET
3、驱动法式的嵌进
在KEIL C51中编译上述法式。使用下载工具软件“DOWNHEX”,把生成的.HEX文件经由过程串口下载到芯片组的固定地址处,使得内核可以挪用它,从而完成二次驱动法式的开发。到此,16路模拟PLC的开发工作基本完成。
3、功能介绍
基于嵌进式PLC开发的多路模拟网络节点具有以下功能:
1. 收集工现场的多路热电偶旌旗灯号; 2. 支持三菱、台达等多家人机界面; 3. 支持梯形图编程(86条指令); 4. 支持CANbus互连(多机并联运行或扩大单元毗连)等。
这里简要介绍下该网络节点的梯形图功能运用。嵌进式PLC的系统软件中内置了温度转换函数,其功能是把热电偶毫伏旌旗灯号对应的AD值转化成温度值。适用于肆意分度热电偶输进旌旗灯号,运用于分歧的控温场所,配合PID调理,使受控温度精度可达±1℃。
下面的梯形图法式就是把一路热电偶旌旗灯号转换成温度值,该旌旗灯号AD值放在D5000,转换后的温度值寄存在D5160中。
图5 基于嵌进式PLC开发的多路模拟网络节点梯形图
4、竣事语
笔者哄骗嵌进式PLC芯片组开发的的PLC产物的实例证实,本着软硬件可裁剪的原则,开发出的产物可以很好的知足用户的个性化需求,勤俭了硬件成本、缩短了研发周期,而且获得了许多壮大的功能,相信它的泛起势必使得PLC生产厂家生产出越来越多的切近终端市场的PLC。
|