ABB公司AC500PLC培训课程第一天17_Address_structure_CN.pptx
- 格式:pptx
- 大小:2.15 MB
- 文档页数:31


技术资料ABB AC500系列PLC指令与功能块手册前言AC500是ABB公司推出的一款可升级的和灵活的自动化控制系统,可完美地满足客户需求。
此系统采用了底板上组合模块的结构, 包括多种CPU模块、通信接口模块、I/O模块及特殊功能模块等。
同时,ABB公司还推出了功能强大的PS501编程软件及丰富的指令系统。
AC500系列PLC可为不同工业领域的用户提供个性化的解决方案,适用于逻辑控制、顺序控制、过程控制和传动控制等领域。
我们已尽全力保证该文件的正确性和完整性。
但是,不可能有绝对没错的文件,因而欢迎您随时向我们提出宝贵的意见和建议。
如何使用本手册如果已经熟练掌握PS501编程软件,直接通过目录查找需要的指令。
如果刚刚开始学习PS501编程软件,建议阅读“第1章 AC500 PLC指令概述”。
如果对PLC所使用的操作数与数据类型不是很了解,建议阅读第2、3章。
附录包含指令速查表、IEC标准指令表、指令关联冲突速查表。
目录1.指令系统概述 (2)1.1 指令的定义与分类 (2)1.2 指令库的定义与分类 (9)1.2.1 基本指令库 (9)1.2.2 扩展指令库 (9)1.3指令库的添加 (9)1.4 指令系统使用注意事项 (9)2.操作数 (2)2.1常数 (2)2.1.1 BOOL常数 (9)2.1.2 TIME常数 (9)2.1.3 DATA常数 (9)2.1.4 TIME_OF_DAY常数 (9)2.1.5 DATE_AND_TIME常数 (9)2.1.6 数值常数 (9)2.1.7 REAL/LREAL常数 (9)2.1.8 STRING常数 (9)2.1.9类型符 (9)2.2 变量 (9)2.2.1 变量 (9)2.2.2 地址 (9)2.2.3 存取数组、结构和POU变量 (9)2.2.4 变量的位寻址 (9)2.2.5 功能 (9)3.数据类型 (2)3.1 标准数据类型 (2)3.1.1 布尔型数据类型 (2)3.1.2 整型数据类型 (2)3.1.3 实型数据类型REAL/LREAL (2)3.1.6 时间常数 (2)3.2 用户数据类型 (2)3.2.1 数组 (2)3.2.2 指针 (2)3.2.3 枚举(ENUM) (2)3.2.4 结构(STRUCT) (2)3.2.5 参考类型(别名) (2)3.2.6 子范围类型 (2)4.基本指令 (2)4.1 算术运算指令 (2)4.1.1 ADD—加法指令 (9)4.1.2 MUL—乘法指令 (9)4.1.3 SUB—减法指令 (9)4.1.4 DIV—除法指令 (9)4.1.5 MOD—取余指令 (9)4.2 赋值指令(MOVE) (2)4.3逻辑运算指令 (2)4.3.1 AND—与指令 (9)4.3.2 OR—或指令 (9)4.3.3 XOR—异或指令 (9)4.3.4 NOT—取非指令 (9)4.4移位指令 (2)4.4.1 SHL—左移指令 (9)4.4.2 SHR—右移指令 (9)4.4.3 ROL—循环左移指令 (9)4.4.4 ROR—循环右移指令 (9)4.5选择指令 (2)4.5.1 SEL—二选一指令 (9)4.5.2 MAX—取最大值指令 (9)4.5.5 MUX—多选一指令 (9)4.6比较指令 (2)4.6.1 GT—大于指令 (9)4.6.2 LT—小于指令 (9)4.6.3 GE—大于等于指令 (9)4.6.4 LE—小于等于指令 (9)4.6.5 EQ—等于指令 (9)4.6.6 NE—不等于指令 (9)4.7数据类型转换指令 (2)4.7.1 BOOL_TO_<TYPE>—布尔类型转换指令 (9)4.7.2 BYTE_TO_<TYPE>—字节类型转换指令 (9)4.7.3 WORD_TO_<TYPE>—字类型转换指令 (9)4.7.4 DWORD_TO_<TYPE>—双字类型转换指令 (9)4.7.5 SINT_TO_<TYPE>—单整型转换指令 (9)4.7.6 USINT_TO_<TYPE>—无符号单整型转换指令 (9)4.7.7 INT_TO_<TYPE>—整数类型转换指令 (9)4.7.8 UINT_TO_<TYPE>—无符号整数类型转换指令 (9)4.7.9 DINT_TO_<TYPE>—双整数类型转换指令 (9)4.7.10 UDINT_TO_<TYPE>—无符号双整数类型转换指令 (9)4.7.11 REAL_TO_<TYPE>—实数类型转换指令 (9)4.7.12 TIME_TO_<TYPE>—时间类型转换指令 (9)4.7.13 DATE_TO_<TYPE>—日期类型转换指令 (9)4.7.14 DT_TO_<TYPE>—日期时间类型转换指令 (9)4.7.15 TOD_TO_<TYPE>—时间类型转换指令 (9)4.7.16 STRING_TO_<TYPE>—字符类型转换指令 (9)4.7.17 TRUNC—截短转换指令 (9)4.8初等数学运算指令 (2)4.8.1 ABS—绝对值指令 (9)4.8.2 SQRT—平方根指令 (9)4.8.5 EXP—指数指令 (9)4.8.6 SIN—正弦指令 (9)4.8.7 COS—余弦指令 (9)4.8.8 TAN—正切指令 (9)4.8.9 ASIN—反正弦指令 (9)4.8.10 ACOS—反余弦指令 (9)4.8.11 ATAN—反正切指令 (9)4.8.12 EXPT—幂指令 (9)4.9地址运算指令 (2)4.9.1 ADR—取地址指令 (9)4.9.2 ^—取地址内容指令 (9)4.9.3 BITADR—位地址指令 (9)4.9.4 INDEXOF—索引指令 (9)4.9.5 SIZEOF—数据类型大小指令 (9)4.10调用指令(CAL) (2)4.11初始化操作指令(INI) (2)4.12 字符串处理指令(Standard.lib) (2)4.12.1 CONCAT—合并字符串指令 (9)4.12.2 DELETE—删除字符指令 (9)4.12.3 FIND—查找字符串指令 (9)4.12.4 INSERT—插入字符串指令 (9)4.12.5 LEFT—左边取字符串指令 (9)4.12.6 LEN—取字符串长度指令 (9)4.12.7 MID—中间取字符串指令 (9)4.12.8 REPLACE—替换字符串指令 (9)4.12.9 RIGHT—右边取字符串指令 (9)4.13 库版本信息检查指令(Util.lib) (2)4.14 BCD码转换指令(Util.lib) (2)4.14.1 BCD_TO_INT—BCD码转整型指令 (9)4.15.1 EXTRACT—位提取指令 (9)4.15.2 PACK—位整合指令 (9)4.15.3 PUTBIT—位赋值指令 (9)4.15.4 UNPACK—位拆分指令 (9)4.16 高等数学运算指令(Util.lib) (2)4.16.1 DERIVATIVE—微分 (9)4.16.2 INTEGRAL—积分 (9)4.16.3 STATISTICS_INT—整型统计 (9)4.16.4 STATISTICS_REAL—实型统计 (9)4.16.5 VARIANCE—平方偏差 (9)4.17 控制器指令(Util.lib) (2)4.17.1 PD—比例微分控制器 (9)4.17.2 PID—比例积分微分控制器 (9)4.17.3 PID_FIXCYCLE—比例积分微分控制器 (9)4.18 信号发生器指令(Util.lib) (2)4.18.1 BLINK—脉冲信号发生器 (9)4.18.2 GEN—典型周期信号发生器 (9)4.19 函数操纵器指令(Util.lib) (2)4.19.1 CHARCURVE—特征曲线 (9)4.19.2 RAMP_INT—整型限速 (9)4.19.3 RAMP_REAL—实型限速 (9)4.20 模拟量处理指令(Util.lib) (2)4.20.1 HYSTERESIS—滞后 (9)4.20.2 LIMITALARM—上下限报警 (9)4.21 双稳态指令(Standard.lib) (2)4.21.1 SR—置位优先双稳态器 (9)4.21.2 RS—复位优先双稳态器 (9)4.22 触发器指令(Standard.lib) (2)4.22.1 R_TRIG—上升沿检测触发器 (9)4.23.1 CTU—递增计数器 (9)4.23.2 CTD—递减计数器 (9)4.23.3 CTUD—递增递减计数器 (9)4.24 定时器(Standard.lib) (2)4.24.1 TP—普通定时器 (9)4.24.2 TON—通电延时定时器 (9)4.24.3 TOF—断电延时定时器 (9)4.24.4 RTC—实时时钟 (9)5.AC500扩展指令 (2)5.1 外部系统库 (2)5.1.1 BATT—读取电池状况 (9)5.1.2 CLOCK—显示及校正时钟 (9)5.1.3 CLOCK_DT—以“DT”格式显示及校正时钟 (9)5.2 内部系统库 (2)5.2.1 CPU_INFO—读取CPU类型 (9)5.2.2 DIAG_ACK—确认一个错误 (9)5.2.3 DIAG_ACK_ALL—确认一个错误类别的所有错误 (9)5.2.4 DIAG_EVENT—生成一个错误事件 (9)5.2.5 DIAG_GET—读取错误 (9)5.2.6 DIAG_INFO—显示对所有还未被读取的错误的观察 (9)5.2.7 FLASH_DEL—删除闪存中的一个数据段 (9)5.2.8 FLASH_READ—从闪存中读取一个数据段 (9)5.2.9 FLASH_WRITE—将一个数据段写到闪存中 (9)5.2.10 IO_DIAG—读取I/O总线的诊断数据 (9)5.2.11 IO_INFO—读取连到I/O总线的设备的数量 (9)5.2.12 IO_MODULE_DIAG—读取I/O总线的模块诊断数据 (9)5.2.13 IO_VERSION—读取I/O总线驱动的版本 (9)5.2.14 RTS_INFO—读取CPU实时系统的版本 (9)5.2.15 SD_READ—从SD卡读取一个数据段 (9)5.2.17 SLOT_INFO—读取插槽信息 (9)5.2.18 SYS_TIME—读取系统时间 (9)5.3 Modbus库 (2)5.3.1 COM_MOD_MAST—处理Modbus主机报文 (9)5.4 ASCII通信库 (2)5.4.1 COM_REC—通过一个“自由模式”的串行接口接收数据 (9)5.4.2 COM_SEND—通过一个“自由模式”的串行接口发送数据 (9)5.5 Ethernet库 (2)5.5.1 ETH_MOD_INFO—从OpenModbus中读取关于TCP/IP处理的状态信息 (9)5.5.2 ETH_MOD_MAST—在TCP/IP客户端(主机)报文上处理OpenModbus (9)5.5.3 ETH_OWN_IP—输出自已的IP地址 (9)5.5.4 ETH_UDP_INFO—从UDP/IP处理中读取状态信息 (9)5.5.5 ETH_UDP_REC—从UDP/IP接收缓存中读取一个数据包 (9)5.5.6 ETH_UDP_SEND—通过以太网UDP/IP发送一个数据包到一个工作站 (9)5.5.7 ETH_UDP_STO—从超时数据缓存读取以太网UDP/IP超时数据包 (9)5.5.8 IP_ADR_DWORD_TO_STRING—IP地址的格式转化 (9)5.5.9 IP_ADR_STRING_TO_DWORD—IP地址的格式转化 (9)5.6 PROFIBUS库 (2)5.6.1 DPM_CTRL—将全局控制指令发送到DP从机 (9)5.6.2 DPM_READ_INPUT—读取从机的输入数据,该从机没被指派给主机 (9)5.6.3 DPM_READ_OUTPUT—读取从机的输出数据,该从机没被指派给主机 (9)5.6.4 DPM_SET_PRM—将用户参数发送到DP从机 (9)5.6.5 DPM_SLV_DIAG—获得DP从机的详细诊断数据 (9)5.6.6 DPM_STAT—读出PROFIBUS通讯模块的状态 (9)5.6.7 DPM_SYS_DIAG—读出所有DP从机的状态概述 (9)5.6.8 DPV1_MSAC1_READ—从DPV1从机读取一个数据块 (9)5.6.9 DPV1_MSAC1_WRITE—将一个数据块写到DPV1从机 (9)6. 编程方式附录 (2)1A C500指令速查表 (2)第1章指令系统概述ABB公司AC500系列PLC为用户提供了丰富的指令,这些指令均可通过编程软件PS501进行调用,操作简单,使用方便。
AC500-eCoAC500-eCo1. (3)1.1. (3)1.2. (3)1.3. (3)1.4.CPU I/O (4)1.5.PLC (5)2. PS501 Control Builder (6)3.ABB Configurator (8)4. (9)4.1. (9)4.2. (10)4.3. (11)4.4. CPU IO (12)4.5. CPU IP (14)4.6. (15)4.7. (17)4.8. PLC (20)4.9. (21)5.CS31 I/O (22)AC500-eCo CS31 - (23)6. COM1 COM2 Modbus RTU (27)1 (27)2 (28)6.3. (30)6.4. COM_MOD_MAST (31)7.AC500-eCo (34)7.1. (34)7.2. (35)7.3. (36)1.1.1.AC500-eCo PLC1.2.1 AC500-eCo CPU PM564-T-ETH 24V2 RS485 USB TK503 3 PS501 CD4 51.3.CPUL+ M FE L+ M 24V in 24V out24V 24V L+ 24V L+LED PWR1.4.CPU I/OPM564 CPUPM564 CPU PM564-TPM564 CPU PM564-R)1.5.PLCAC500-eCo TK503TK503TK503 \CD_AC500\Driver\TK503_TK504\ TK503_TK504_Installer.exeAC500-eCo2. PS501 Control BuilderCD - ROM CD - ROM “CD_Menu_V5x.exe” ”- >“ “[X]:\ CD_Menu_V5x.exe” [X] CD- ROM“Please select language”3.ABB ConfiguratorABB Configurator tools -> Optionen -> Internationale Einstellungen -> Spezielle Sprache4.4.1.1 ABB Configurator “File”/“2 CPU : AC500 PM564-ETH34.2.1) “File” / “ ...” “My Documents”2) “Save”4.3.1)IO “IO_Bus(I/O-Bus)”2)4.4. CPU IO1) “IO(Onboard IOs)” IO2) IO3) Input0~4 Input, Interrupt on rising edge, Interrupt on fallingedge Fast counter4) Input AI0~1 Digital input Analog input 0 (10V)5) Output0~4 Output PWM PWM PWM6) Output 0 0...10V, 0...20mA 4...20mA7) “I/O4.5. CPU IP1) “Tools”\“IP2) ” CPU IP3) IP4) IP4.6.1) “AC500_1” “Yes”CoDeSys2) POU PLC_PRG3) IL FBD LD ”\“4) ”\“ ”\“ ...”5) LD6)”,4.7.1) CPUAC500-eCo CPU : COM1 EthernetCOM1 ABB Configurator COM1 – Online_Access [COM1 – Online Access]2) CoDeSys ...”3) “Gateway... ” Connection Local4) “New” Serial RS2325) : “Motorola byteorder”“Yes”6) “New” TCP/IPAddress AC500-eCo IP PC IP AC500-eCo IP4.8. PLC1) PLC ” :CPU2)CPU EPROM4.9.1) AC500-eCo run2)3)4)5.CS31 I/OAC500-eCo PLC ABB CS31AC500-eCo : DC551-CS31 CI592-CS31I/O : 732 32CS31 : 31 :500 3 2000 : 187.5 Kbit/sAC500-eCo CS31 -1) “Interface [FIX]”COM1 – Online_Access [COM1 – Online Access] “COM1_CS31_Bus”2)COM1 – Online_Access [COM1 – Online Access] COM1_CS31_Bus (COM1 - CS31-BusDC551_CS313) DC551-CS31I/O4)CS31 RS-485 31DC551-CS31 DC551-CS317 I/O 240 DI 240 DO 32 AI 32 AO5) I/O6)6. COM1 COM2 Modbus RTU1COM1 SUB-D RS-485 COM1RS-485120OhmsRxD/TxD-P RxD/TxD-NRS-4852COM2 5 RS-485 COM2RS-485120OhmsRxD/TxD-P RxD/TxD-NAC500-eCo CPU COM2 COM2 1-2 3-4RS-4856.3.1) “Interface [FIX]”COM1 – Online_Access [COM1 – Online Access] “COM1_MODBUS”2)COM1 – Online_Access [COM1 – Online Access] COM1_MODBUS (COM1 – MODBUS)RS-485 MODBUS RTS control“Telegram” CPU MODBUS Operation mode “Master”, CPU MODBUS Operation mode “Slave”,3) COM MODBUS RTU “Enable login”“Enable” “Parity” “none”6.4. COM_MOD_MASTCOM_MOD_MAST Modbus_AC500_V10.LIB COM_MOD_MAST COM COM1 COM2 MODBUS COM_MOD_MAST COM_MOD_MAST Control Builder (PS501) MODBUS EN COM_MOD_MASTCOM_MOD_MASTEN BOOLCOM BYTE COM1, COM2SLAVE BYTEFCT BYTETIMEOUT WORD msADDR WORD /NB WORDDATA DWORDDONE BOOLERR BOOLERNO WORD1)EN BOOL ( )ENERR ERNO EN2)COM BYTE (com)COM MODBUSCOM = 1: COM1COM = 2: COM23)SLAVE BYTE ( )SLAVE4)FCT BYTE ( )FCT01 02 n03 04 n05 106 107 815 n16 n5)TIMEOUT WORD ( )TIMEOUT msTIMEOUTMODMAST -1 ms6)ADDR WORD ( )ADDRMODBUS AC500 MODBUS MODBUS ADDR7)NB WORD ( )NBNB NB NBFCT Nb01 02 200003 04 125 /6205 106 107 815 196816 123 /618)DATA DWORD ( )DATA FCT 1 n9)DONE BOOL ( )DONE DONE TRUE ERR ERR TRUE ERNO10)ERR BOOL ( )ERR DONE DONE=TRUE ERR=TRUE ERNO11)ERNO WORD ( )ERNO ERNO DONE ERR ERNO DONE TRUE ERR TRUE ERNOMODBUS7.AC500-eCo7.1.AC500-eCo COM1 COM2 CP400 AC500-eCoAC500-eCo CP400AC500-eCo COM1 CP400 COM1,COM3 TK4067.2.1) AC500-eCo RS-485 MODBUS 0( NONE)2) CP400 6 ON (6 OFF)3)CP400 AC500-eCo( NONE) CPU MODBUS4) CP400 ABB AC500-eCo MODBUSCPU MODBUS5) CP400 CPUCP400 CP4007.3.1) RJ45 RJ45 RJ45RJ45 2) AC500-eCo AC500-eCoMODBUS TCP/IP 0 Ture3) CP400 6 ON (6 OFF)4)CP400 IP5) CP400 ABB AC500 PM571 Ethernet CPU IP6) CP400 CPUCP400 CP400Doc. kind: No. o. p.: Helpline document 31Title: Lang.:AC500-eCo.doc CN。