嵌入式控制器应用程序开发

简介: 嵌入式控制器应用程序开发

ISaGRAF简介

ISaGRAF是一个工业自动化软件,包括软逻辑编程工具包,一个Runtime和用于自动控制应用客户VAR/OEM的开发工具。ISaGRAF被用于各种工控机上组成了高性价比的软逻辑控制器。ISaGRAF符合国际公认的自动化编程软件标准IEC 61 131-3。它也是世界上第一个以Windows平台为开发环境的软件,不仅全部支持5种PLC编程语言,而且还支持流程图(Flow Chart,FC)语言进行控制软件的开发。另外,它还具有强大的开放性和伸缩性,支持用户用符合IEC 61 131-3的语言编写功能和功能块。ISaGRAF提供了100多种功能丰富的IEC 61131-3标准函数和功能块,而且还集成了许多适合过程控制和SCADA系统特点的高级函数,这些预集成的函数和功能块提高了应用程序开发效率,满足复杂控制的需要。ISaGRAF的应用范围广泛,可以高效、可靠地完成从简单的机械控制到复杂过程控制与时间苛刻的运动控制。当用于构造分布式过程控制应用,ISaGRAF通过“变量绑定”可在网络环境里开发多个配置和分布式系统,并且项目的开发完全不依赖它们运行的物理平台。ISaGRAF运行目标机可运行于任何操作系统(Embedded NT,NT with RTX,VxWorks,Windows CE,Linux,pSOSystem,Windows NT,LynxOS,QNX,MS-DOS,US Software,VRTX)。


最新的ISaGRAF 5.0版结合了IEC 61131-3和IEC 61499标准;设备之间的相互作用由IEC 61499功能块图自动调节和同步,确保冗余控制器的数据一致性,消除了对单独同步方案的需求,并简化了鲁棒控制系统的开发和维护。还具有打包压缩自动化功能,能够为不同的应用建立IEC 61499功能块,实现以目标为导向的编程。

ISaGRAF产品由以下3部分构成。

开发工具包。

应用编程环境。

运行目标机。


1.开发工具包

开发工具包是提供给VAR/OEM的开发产品,用于将运行目标机移植到任何操作系统,增加任何硬件平台的I/O通信接口、增加C功能和功能块,定制应用编程环境。

ISaGRAF开发工具使大量的设备制造商可生成许多不同的运行引擎。使用标准的应用编程环境可生成精炼的嵌入式系统。开发工具包产品提供可定制的运行目标机,包括以下几方面。


(1)系统接口—

—ISaGRAF开发工具包为开发人员提供C代码,用于将运行目标机移植到特定的硬件平台和操作系统,增加C功能和功能块,定制应用编程环境。


(2)通信接口

——ISaGRAF通信协议是简化的client/server协议,可应用于各种应用的连接,如Ethernet或RS-232/485。


(3)I/O接口

——ISaGRAF模块化结构集成了各种I/O系统,如I/O板、远程设备、网络通信或复杂的多任务协议。I/O接口基于I/O设备驱动。有运行目标机的系统可装备各种I/O,远程I/O和总线。ISaGRAF已经实现与Bitbus,Canbus,DeviceNet,FIP,InterBus,LonWorks,NetBios和Profibus集成,其他总线也可容易地实现。


(4)功能接口

——为了增强与定制IEC 61131-3和流程图语言,ISaGRAF提供C用户程序支持。用C编写的功能和功能块可直接被支持的6种语言调用。这种方式是ISaGRAF语言的扩展。在多任务系统里,用C编写的用户任务可与ISaGRAF程序并行运行。任务可用于显示图形,与网络或磁盘的接口,或执行复杂运算如运动控制。

开发环境支持C用户程序编写用下列任一方式。

(1)用C编写的功能和功能块可被6种支持的语言直接调用。C功能和功能块可用于访问任何目标机系统的资源。

(2)在多任务系统上,用C编写的用户任务可与ISaGRAF程序平行运行。可用于显示图形、与网络或磁盘的接口、执行复杂运算如运动控制。C功能块也可接收或发送来自于ISaGRAF平行运行的用户任务的数据。


2.应用编程环境

应用编程环境是完全的编程环境,用于开发更精炼的应用。它完全支持5种IEC 61 131-3编程语言及流程图编程语言。其灵活性使开发人员可根据自己对编程语言的熟悉程度和控制系统特点选择合适的编程语言,以满足方案的要求。编程环境是集成开发环境,提供了开发控制软件的一系列工具,包括编辑、调试、代码生成、文档、库管、存档、在线监视、离线模拟和在线更改等。编程环境的输出应用可以是精炼的TIC(硬件无关代码)或C源代码。


3.运行目标机

运行目标机(或虚拟机)是一个控制引擎,负责运行编程环境开发的应用,包括用于扩展和增强应用附加的功能。由ISaGRAF应用编程环境生成的应用使运行目标机可使用任何操作系统在任何平台上执行它们。

运行目标机是一个强大、灵活的控制运行引擎,执行由开发环境生成的TIC(硬件无关代码)。与JAVA类似,运行目标机可作为处理器运行、操作虚拟机,提供了与控制器系统、I/O通信的简单、开放接口,ANSI C功能和功能块。

ISaGRAF PRO运行目标机是针对完全分布式应用的嵌入式软件,可运行在网络环境里的多硬件平台上。ISaGRAF PRO运行目标机的组成部分在这些分布式应用里起着重要的作用。

运行目标机可由OEMs和VARs定制。与ISaGRAF程序的独立和再使用的目标一致,该方法减少了开发时间和培训费用。例如,通过维护标准模块库,开发人员可生成可再使用的代码和应用,能用于不同制造商的硬件。

使用ISaGRAF PRO容易集成C语言编写的功能和功能块。如果需要,系统集成商或硬件制造商可在MS-Access数据库里简单定义特定硬件提供的功能。新的I/O驱动也可应用于目标机软件。

PC机与ISaGRAF运行目标机的连接可用以下3种方式。

(1)简单的RS-232串口连接。

(2)Ethernet TCP/IP网络。

(3)其他通信协议或其他网络协议,如Profibus,LonWorks等。ISaGRAF与Modbus兼容使开发环境可与应用直接相连,方便在线调试。


用ISaGRAF开发嵌入式控制器程序

以下介绍用ISaGRAF开发嵌入式控制器程序。在进行程序开发前,要安装ISaGRAF软件和泓格设备的ISaGRAF驱动程序。

设计的控制系统硬件配置为泓格I-7188EG嵌入式控制器(无扩展IO)、I-7050D数字量输入/输出模块。其参数分别如下。


(1)I-7188EG:地址为2,IP为192.168.255.1,控制器的COM1口与计算机的COM1连接,COM2口与I-7050D连接,实现远程数据采集。

(2)I-7050D:地址为3,与I-7188EG的通信参数为9600,N,8,1。

这里需要注意的是,I-7188EG与I-7188EG通信连接的串口参数必须一致,否则会出错。

下面详细介绍程序开发、仿真调试、下载等过程。为了简单起见,程序用LD编写,其逻辑十分简单,控制程序要实现如下功能。

(1)I-7050D的DI0接通且DI3断开时,DO0输出“1”。

(2)当DI1或DI2接通时,DO1,DO2输出“1”。

(3)当DI5接通5s后,DO3,DO4输出“1”;DI5断开,DO3,DO4输出“0”。

(4)当DI5断开时,DO5输出“1”。


1.编辑LD程序

1)启动ISaGRAF→项目(Project)

启动后出现如图7.8所示的项目管理器。项目管理器窗口出现后,既可以选择已经有的项目组,又可以建立新的项目组,在项目组下,可以建立多个项目。在图7.8所示的项目组中,有多个项目。选择新建项目,项目名称为“test1”。单击项目“test1”,弹出标题为“ISaGRAF-TEST-程序”的窗口。

接下来,就要定义变量,单击工具条上的图标,会出现标题为“ISaGRAF-TEST-全局布尔量”的窗口,

相关文章
|
1月前
|
缓存 负载均衡 安全
开发领域
开发领域
21 4
|
5天前
开发遇到的问题
开发遇到的问题
11 1
|
7月前
|
算法 安全 程序员
我叫李明,我是一名开发人员
我叫李明,我是一名开发人员
|
9月前
MyBatisDao开发
MyBatisDao开发
34 0
|
存储 Dubbo 前端开发
开发之所以然
想点啥说点啥
|
小程序 IDE Serverless
开发前准备
在开始使用阿里云小程序Serverless服务开发支付宝小程序前,您需要确保完成以下准备工作。
开发前准备
|
测试技术
开发流程模型
开发流程模型
943 0
|
PHP
你是世界上最优秀的开发人员吗?
译文链接:http://www.jobbole.com/entry.php/534
639 0
|
PHP
开发人员能够得到的最好赞扬
译文链接:http://www.jobbole.com/entry.php/452
681 0
|
Java 测试技术 开发工具
如何自己开发软件测试工具
一说到自动化测试工具,大家很多人都会想到的是QTP、LR或者selenium之类的工具,要大家一开始设计一个这样的工具,其实确实很有难度,因为其包含的功能细节太过庞大。当年的我,开始设计开发工具的过程中,走了很多弯路,例如:做工具的界面技术的历程,刚开始用tcl/tk脚本语言,用tcl写底层框架,用tk写图形界面,后来发现tk虽然构造图形方便,但可拓展性实在太差。
1927 0