1、codesys所有函数的详细说明二、模拟量标定库AnalogFilter Library模拟量标定库就是指AnalogFilter.lib中的一些库函数。2.1 CUT功能块功能描述:把输入值进行预处理,调整斜率,消除两端非线性影响。调整效果见图:功能块如下图:输入:(1)Input,UINT型,要处理的信号。 (2)PAR_InputILowLimit,UINT型,用来控制输出的下限。 当Input=256*PAR_InputHighLimit时输出就为0。输出:(1)Output,UINT型,处理完的信号。 (2)LowLimit,BOOL型,Input=256*PAR_InputHigh
2、Limit时HighLimit为TRUE。2.2 HP功能块功能描述:设置一个死区,把死区以内的值都设为0。功能如图:功能块如下图: 输入:(1)Input,UINT型,输入信号。. (2)PAR_CutLimit,UINT型,死区控制参数。当Input PAR_PosFull*256 + PAR_MinErrorDifference, 则输出为TRUE。(2) ErrorInputTooLowOut,BOOL型,AIInput PAR_Full + PAR_MinErrorDifference范围,ErrorHigh为TRUE,并把输出置零。(3)ErrorLow,BOOL型,低位出错开关,
3、输入=PAR_PosFull * 256时, 输出为65535 , PosValue 为TRUE。(4)PAR_NegFull,UINT型,当input值 Input值,值为 TRUE;PAR_Zero * 256 Input 值,值为 FALSE。2.10 Transfer功能块功能描述:Transfer 模块用于设置缓冲曲线度, 当Zero为TRUE时,输出为零,当 Full为 TRUE,而Zero不为零时,输出为65535。缓冲曲线度公式: Y2表正向,Y3 表负向。曲线如下图:功能块如下图:输入:(1)Input,UINT型(2)Zero,BOOL型,当Zero为TRUE时,输出为零。
4、(3)Full:BOOL型,当 Full为 TRUE,而Zero不为零时,输出为65535。(4)PAR_Progression,INT型,曲线度设置参数。(5)OutputEnable,BOOL型,当此参数值为TRUE时,模块按预定算法执行;为FALSE时,保持上一次输出输出:(1)Output,UINT型三、CANII IEC库本库就是一些基于CAN2.0协议的一些功能块。也就是Can2.lib中的一些函数与功能块。3.1 CAN_II_BUFF_INIT函数功能描述:本功能块的主要作用是用来初始化CAN接受信息对象的。注意CAN_II_BUFF_INIT,必须用在CAN_II_INIT前
5、面。本函数是BOOL型的。函数块如下图:输入:(1) ENABLE,BOOL型。函数的使能变量。(2) OBJ,对象号,输入数值,114,0是用来传输的号。(3) ID,信息ID,11或29位ID。(4) EXTENDED,BOOL型,用来扩展ID为29位。输出:(1) ERROR,BOOL型。当OBJ超出范围时有输出。3.2 CAN_II_GET_MSG功能块功能描述:当CAN总线上有新的CAN信息是接受数据。功能块如下图:输入:(1) ESSAGE,用户想接受的信息。输出:(1) EXTENDED,BOOL型,当信息ID为29位时为TRUE。(2) ID,信息的ID。(3) DLC,信息的
6、长度。(4) DATAn,信息的数据,其中n=DLC。(5) CUSTOMER,没有定义。(6) NEW_DATA,BOOL型,当缓存中有新的数据时为TRUE。3.3 CAN_II_INIT函数功能描述:CAN_II设备的初始化函数。功能块如下图:输入:(1) ENABLE,BOOL型,使函数可以工作。(2) SPEED,CAN设备的波特率。(3) GBML (GloBal Mask Long) 29bit 全球码。(4) GBMS(GloBal Mask Short)11bit 全球码。(5) TERM_RES CAN 的接受终端 On/Off. 3.4 CAN_II_RTR函数功能描述:发
7、送远距离传送请求。本函数是 BOOL型的。函数块如下图:输入:(1) ENABLE,BOOL型,使能。(2) OBJ 选择对象号,113。输出:(1) ERROR,当输出为TRUE时,就是选择的对象好有问题。3.5 CAN_II_STATUS功能块功能描述:本功能快就是用来返回 CAN设备的状态。功能块如下图:输入:无输出:(1) LEC,就是返回最近的一个出错的代码。(2) TXOK 为TRUE时就表示传输成功。(3) RXOK 为TRUE时就表示接受成功。(4) EWARN_COUNT 出错记数器。(5) BUSOFF_COUNT,总线关闭记数器。3.6 CAN_IIRX 功能块功能描述:
8、从更高的message对象来接受新的CAN信息。功能块如下图:输出:(1) EXTENDED,BOOL型, 扩展信息的ID位为29位。(2) ID ,信息ID。(3) DLC ,数据长度 1.8。(4) DATAn ,信息数据,其中n=DLC(5) CUSTOMER ,没有定义。(6) NEW_DATA ,当有新的数据到了缓存中时为TRUE。3.7 CAN_IITX功能块功能描述:向更高的message对象来发新的CAN信息。功能块如下图:输入:(1) ENABLE,BOOL型,使能。(2) XTENDED,BOOL型, 扩展信息的ID位为29位。(3) ID ,信息ID。(4) DLC ,数
9、据长度 1.8。(5) DATAn ,信息数据,其中n=DLC。CAN2使用说明:接收数据: 1可以采用CAN_II_BUFF_INIT和CAN_II_GET_MSG配合使用,自动将CAN总线上ID和CAN_II_BUFF_INIT相同ID的数据自动放到相应的缓存里面,建议如果接收的数据有限的话使用CAN_II_BUFF_INIT和CAN_II_GET_MSG函数接收数据,CAN_II_BUFF_INIT应在CAN_II_INIT之前。2也可以只使用CAN_IIRX,但是如果使用CAN_IIRX函数必须判断接收回来的ID和我需要的ID是否相等,因为CAN_IIRX将总线上所有的数据都接收回来。
10、发送数据:使用CAN_IITX发送CAN数据由于发送缓存的限制,每一次最多可以发送8个不同CAN ID的数据,考虑到每次发送的可靠建议每次程序循环一次发送5个不同CAN ID 的数据。四、CANOPEN IEC 库下面主要介绍的是一些基于CANOPEN协议的库函数。也就是在canopen.lib中的一些函数与功能块。4.1 INIT FUNCTION4.1.1 CANOPEN_END_INIT函数功能描述:本函数的主要作用是用来结束CANOPEN的初始化。本函数是BOOL型的。函数块如下图:输入:(1) ENABLE:BOOL型,使能。4.1.2 CANOPEN_INIT_SDO函数功能描述:
11、对SDO对象开始初始化。函数图如下:输入:(1) ENABLE,BOOL型,使能。(2) ID,BYTE型。(3) SDO_TYPE,BOOL型,FALSE时为TX型,TRUE时为RX型。(4) SDO,BYTE 型,SDO的编号。4.1.3 CANOPEN_START_INIT函数功能描述:本函数就是CANOPEN的开始初始化。本函数是BOOL型的。函数块如下图:输入:(1) ENABLE,BOOL型,使能。4.2 PDO HANDLING FUNCTIONS4.2.1 CANOPEN_ADD_NODE_RECEIVE_FROM函数功能描述:增加CANOPEN接收的一个节点号(4路PDO)。
12、本函数是BOOL型的。函数图如下:输入:(1) ENABLE,BOOL型。使能。(2) PDO_TYPE_SELECT,BOOL型,PDO的类型选择,FALSE 为 TPDOS型,TRUE 为RPDOS型。(3) ID,本PDO是节点ID的。输出:(1) ERROR,当ID超出范围时ERROR有输出。4.2.2 CANOPEN_ADD_RECEIVE_PDO函数功能描述:增加接收一路PDO。本函数是BOOL型的。函数块如下图:输入:(1) ENABLE,BOOL型。使能。(2) PDO_TYPE_SELECT,BOOL型,PDO的类型选择,FALSE 为 TPDOS型,TRUE 为RPDOS型
13、。(3) ID,本PDO是节点ID的。(4) PDO,BYTE型。PDO号,14。输出:(1) RROR,当ID或PDO超出范围时ERROR有输出。4.2.3 CANOPEN_ADD_TRANSMIT_NODE_ID函数功能描述:虚拟CANOPEN发送的一个节点号(4路PDO)。本函数是BOOL型的。函数图如下:输入:(1) ENABLE,BOOL型。使能。(2) PDO_TYPE_SELECT,BOOL型,PDO的类型选择,FALSE 为 TPDOS型,TRUE 为RPDOS型。(3) ID,本PDO是节点ID的。输出:(1) ERROR,当ID超出范围时ERROR有输出。4.2.4 CAN
14、OPEN_ADD_TRANSMIT_PDO函数功能描述:虚拟CANOPEN发送的一路PDO。本函数是BOOL型的。函数图如下:输入:(1) EABLE,BOOL型。使能。(2) PDO_TYPE_SELECT,BOOL型,PDO的类型选择,FALSE 为 TPDOS型,TRUE 为RPDOS型。(2) ID,本PDO是节点ID的。(3) PDO,BYTE型。PDO号,14。输出:(1) ERROR,当ID或PDO超出范围时ERROR有输出。4.3 SDO HANDLING FUNCTIONS4.3.1 ADD_VERSION函数功能描述:把用户的串放入 CANOPEN的版本对象中去(16#10
15、0A)。本函数是BOOL型的。函数图如下:输入:(1) ENABLE,BOOL型,使能。(2) VER,STRING型,用户定义的串。4.3.2 CANOPEN_GET_SDO函数功能描述:CANOPEN接收一个SDO。本函数是BOOL型的。函数图如下:输入:(1) ENABLE,BOOL型,使能。(2) SDO,BYTE型,SDO号。(3) INDEX,WORD型,对象的索引号。(4) SUBINDEX,WORD型,对象的子索引号。(5) OFFSET,BYTE型,数据在接受时的偏移量。4.3.3 CANOPEN_POINTER_SHARE函数功能描述:把用户定义的变量通过CANOPEN总线
16、,用SDO对象发在总线上。本函数是BOOL型的。函数如下图:输入:(1) ENABLE,BOOL型,使能。(2) OUT,DWORD型,用户要放的变量。它是一个指针操作。(3) Length,BYTE型,所用的对象的长度。(4) Size,BYTE型,所用的对象的长度。4.3.4 CANOPEN_PUT_SDO函数功能描述:向网络上的一个节点发送一个SDO。本函数是BOOL型的函数块如下图:输入:(1) ENABLE,BOOL型,使能。(2) SDO,BYTE型,SDO号。(3) INDEX,WORD型,对象的索引号。(4) SUBINDEX,WORD型,对象的子索引号。(5) OFFSET,
17、BYTE型,数据在接受时的偏移量。(6) LENGTH,BYTE型,SDO对象的长度。4.3.5 CANOPEN_SHARE函数功能描述:把用户定义的串通过CANOPEN总线,用SDO对象发在总线上。本函数是BOOL型的。函数块如下图:输入:(1) ENABLE,BOOL型,使能。(2) OUT,STRING型,用户定义的串。(3) Length,BYTE型,所用的对象的长度。(4) Size,BYTE型,所用的对象的长度。4.3.6 CANOPEN_UPDATA_SHARE函数功能描述:把用户定义的串通过CANOPEN总线,用SDO对象发在总线上。本函数是BOOL型的。函数图如下:输入:(1
18、) ENABLE,BOOL型,使能。(2) OUT,STRING型,用户定义的串。(3) share_no,BYTE型,哪一个要更新。(4) subindex,BYTE型,哪一个地方要更新。4.4 state中的函数与功能块4.4.1 CANOPEN_DIAGNOSE功能块功能描述:给出CAN以及程序循环的有关信息。功能块如下图:输出:(1) BUS_OFF_COUNT,BYTE型,总线关闭记数。(2) EWARN_COUNT,BYTE型,错误与警告的数量。(3) TXBUFF_FULL_COUNT,BYTE型,记CAN设备传输缓冲区满的次数。(4) CYCLE_TIME,BYTE型,程序最后一个循环所用的时间,单位是毫秒。(5) H
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1