BODAS编程培训课件_第1页
BODAS编程培训课件_第2页
BODAS编程培训课件_第3页
BODAS编程培训课件_第4页
BODAS编程培训课件_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

怎样用BODAS编程

BODASforCoDeSys-users宋金富BRH-M-MEWelcometo欢迎!在BODAS上如何写输入输出实时操作系统实例BODAS–BODEM编程建议提问和解答目录2Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein总则1/2历史

-以C语言为基础发展而来

-在PLC控制领域被广泛地接受C-功能函数作为基本的功能函数

-API(应用程序接口)已经存在于C语言之中-脱离控制器层的高级语言编程

-很容易创建功能强大的实时操作系统3Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein总则2/2实时操作系统

-基于功能而不是基于地址!

-信道通路提供多种实用功能

-实时操作系统库文件

-F2-插入功能键

-F1-在线帮助键4Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein输入通道类型ANA_* 模拟量输入口输入模拟量DIG_* 数字量输入口输入数字量DIG_F* 频率量输入口输入数字量FRQ_* 频率量输入口输入频率量FRQ_D* 数字量输入口输入频率量A 电路板AB 电路板B(只有MC6E,RC12-18)例:ANA_A1 模拟量输入口1FRQ_DA2 在第2个数字量输入口输入频率量板号号码1..N 取决于硬件,电路图上的编号

++5Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein输出通道类型A 电路板AB 电路板B(MC6E,RC12-18)板号号码1..N 取决于硬件,电路图上的编号++DIGL_* 数字量输出DIGP_* 比例量输出口作为数字量输出PWM_* 比例量输出LED_* ECU上的LEDs输出(仅只RC2-2)DIGSTM_A1 数字量输出口输出STM(仅只MC)

AOUT_* 模拟量信号输出(0-5V)例:DIGL_A1 数字量输出1PWM_A2 比例量输出26Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>einRC2-2测试装置Inputs1234HzVAA12DigitalInProportionalout12OutputsopenshortO.K.PWM_A1PWM_A2DIGL_A1DIG_A1DIG_A2FRQ_A1ANA_A1PWM_A1PWM_A2FrequencyInAnalogInDigitaloutPower7Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>einRC2-1选择ECU(Target)[Project][Options][Targettype]8Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein输入模拟量输入数字量输入频率量输入9Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>einRead-inAnalogValue读入一个模拟量输入(iChnl)

输入通道5V0输出102310Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein0V5V10000010iPmaxiFmaxiFminiPmin输出1000输入读入一个电位计信号in_getPoti( iChnl,通道编号 iPmin,最小标定值 iPmax,最大标定值 iFmin,最小故障点 iFmax)

最大故障点in_getPotiStatus(iChnl)11Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein0V5V1000001-1000iPmaxiFmaxiFminiPmin输出1000输入读入一个带中位的电位计in_getPotiDir( iChnl,通道号

iPmin,最小标定值

iPmax,最大标定值

iPmid,中间标定值

iFmin,最小故障检测点

iFmax)

最大故障检测点in_getPotiStatus(iChnl)iPmid012Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein读入一个数字量信号输入(iChnl)

输入通道5V0输出1

2,5V13Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein数字量输入的参数化In_initDig(iPull)

方式定义内部接线方式:pullup拉上/pulldown拉下缺省值为:内部拉下(接低电平)数字量输入分组有效(MC全部一致;RC分组,1、2一组,3、4、5、7一组,6、8固定接低电平)14Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein读入一个频率量必须只执行一次(初始化)对FRQ_*需设采样门时间对FRQ_D*需设最小频率限制值 Freq<2000Hz只有定义内部测量方式时才可进行脉冲比例测量

5%<result<95%in_initFreq( 只执行一次 iChnl, 信号通道 iGateTime, 计算频率的门时间 iMode, 频率/脉冲比率(适于内部计算方式)

iFreqLimit)

最低限频率值1/10Hz(适于内部计算方式)

in(iChnl)

通道号

循环调用15Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein扩展的频率输入功能测量两个脉冲输入之间的相位使用两个相邻的频率输入点配合下条语句,可以实现计数并判断方向in_getFreqPhase(iChnl)Channel 循环执行in_initFreqPhase(iChnl)Channel

只执行一次16Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>einin()---RC2-1ANA_* 模拟量信号值DIG_* 数字量值FRQ_* 频率量KEY_* 按键A 电路板AB 电路板B(MC6,

RC12-18)例:ANA_A1 模拟量输入117Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein输出脉宽调制比例输出数字量输出模拟量输出STM伺服电机控制输出(MC6)18Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein可控的脉宽调制比例输出out(iChnl)通道号[mA]180001800所需电流19Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein可控的电磁阀输出out_setProp( iChnl,

iVal,

iMin, iMax)[mA]1800iMaxiMin011000iValChannel通道号给定值0..1000控制始点控制终点20Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein扩展的输出功能Out_getStatus()给出输出通道工作状态Out_initPropFreq()设定数出脉冲的频率,缺省值为100Hz21Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein系统功能Sys_getAge()以分钟的形式给出控制器工作时间Sys_getTime()以ms的形式给出控制器得电至今的工作时间Sys_getRTSRevision()给出程序版本号Sys_setCycle()设定程序运行周期Sys_getSupply()读出系统供电电压Sys_setMC6H()激活MC6H第6数字量输入端22Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein最大程序长度ECU可用

RAM-Memory可用

Flash-MemoryMC664kByte384kByteRC2-164kByte64kByteRC2-264kByte128kByteMC864kByte128kByteRC6-964kByte896kByte23Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein用BODAS编制BB3功能BODAS中进行标定的方法:-在[Resources][PLCconfiguration]的树型结构中可以插入和改变标定参数.Texts

文本在程序下载过程中被存储.

-Values参数值被存储于

EEPROM的参数页中。历史原因:所有的应用软件均使用统一的BB3结构形式主菜单含8组标定项,每组标定项含8个参数项目的:BODAS应用软件也可以通过BB3和BODEM进行通讯24Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein用BODAS编制BB3功能树结构(Flash) 内容(EEPROM)25Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein用BODAS编制BB3功能26Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein用BODAS编制BB3功能EEPROM存取功能命令(可选)

页命令

ee_loadPage()

读出页到RAM

ee_savePage()

写RAM到EEPROM

(自动装载参数页)

参数命令

ree_getMem()

由RAM读出参数

ee_doSaveMem()

直接写入

EEPROM

ree_SetMem()

写入

RAM

!

几个单值可被单循环写入

只有短的数组才能单循环存储.对于长数组的存储必须在存储过程中进行延时

!27Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein用BODAS编制BB3功能DefaultValues

-在PLCconfiguration中进行缺省值设定-使用语句bb3_setName()如果RTS监测到新的程序名,PLCconfiguration中的缺省值即被调用.28Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein使用BODEM/BB-3RTS通讯系统开始工作后,首先判断所接软件是BODEM/BB-3还是BODAS两种软件进行改变应用时必须开关一次电源。通过BODEM/BB-3改变的参数,必须再读入应用程序.

命令sys_isMemChanged()用于监测是否有参数改变.29Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein编制一个BODAS程序

结构综合的初始化语句

EEPROM

设置程序周期特定项目的初始化语句

初始化

CAN

程序名

频率输入通道起始条件连锁

e.g.驱动手柄在中位

e.g.安全开关已打开主程序

BODAS可视显示参数设定

中间值

错误信息BODEM/BB-3通讯

参数设定过程

显示过程参数30Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein编制一个BODAS程序

变量“尽可能使用局部变量,必要时使用全球变量”局部变量一般地说不能从外部修改(功能函数,功能块)结构更加清晰透明

而且使用一个数据指针有可能传输更多的数值

(功能块中的VAR_IN_OUTsDiesel.iSpeed,sDiesel.iTeeth,...)只在一个地方即可设置或修改全球变量31Datum,AbteilungundVermerkegebenSieüber<Ansicht><Kopf-undFußzeiel>imFeld<Fußzeile>ein编制一个BODAS程序

程序语言主程序

顺序功能图表(SFC)运行程序

连续功能图表(CFC)功能块,功能函数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论