松下plc(fp-x)modbus通讯实例
基于FPX—COM5的松下PLC与组态王的以太网通信
基于FPX—COM5的松下PLC与组态王的以太网通信作者:左鑫来源:《山东工业技术》2015年第01期摘要:本文详细讲解了以松下PLC的FPX-COM5为基础,通过RJ45以太网接口连接组态王,使上位机和下位机之间组网联机。
为此,我们可以进一步根据相关原理,构建出更复杂的以太网控制系统。
关键词:以太网;松下PLC;FPX-COM5;组态王1 引言当今社会,众多的现场总线让系统集成者们感到很多不便,而此时,以太网在工业控制和自动化过程控制领域中迅猛发展,逐渐引领潮流。
所以很多厂商都针对工业以太网开发出接口和应用,基于TCP/IP协议构建全开发的控制系统。
所以利用以太网实现上位计算机和PLC 间的通讯是现代工业控制中的重要技术之一。
2 下位机侧简介2.1 松下FPXFPX系列PLC为松下电工出的经典小型PLC,在小型设备行业具有很大的占有率。
具有运行速度快、配置灵活多样,高性价比等特点,配合强大的指令系统,在工控领域具有广泛的应用。
2.2 FPX-COM5FPX-COM5是FPX系列PLC基于工业以太网的通信插件。
插卡中的的Ethernet接口与其他设备连接时使用Ethernet,但FP-X本体和AFPX-COM5则通过RS232C进行通信,具有Ethernet与RS232C之间转换的功能。
插卡典型功能:(1)支持TCP/IP、UDP/IP 两种通信协议,因此可与网络上的计算机等进行广泛通信。
(2)可通过UDP/IP通信进行广播发送。
另外,还可通过广播发送来使用FP-X本体PC (PLC)链接功能。
(3)可以对多个对象(最多99 台)按照单元No.(站号)发送信息(选择计算机链接时)。
(4)能够自动获取IP 地址(DHCP功能)。
(5)能够通过网络信息通知、确认功能,在FP-X本体上确认主站IP地址等。
3 上位机侧简介3.1 组态王组态王kingview是亚控科技根据当前的自动化技术的发展趋势,面向低端自动化市场及应用,以实现企业一体化为目标开发的一套产品。
PLC的Modbus通信
第二,就是要读取的数据量是以字为单位而不是以字节为单位。
3.3 I/O
在这次设计中一共用到了5个输入,3个输出,具体分配如表7
表7 I/O分配表
I/O名称
作用
I/O类型
I0.0
复位按钮
输入
I0.1
发送步进电机阶段1控制命令
输入
I0.2
发送步进电机阶段2控制命令
输入
I0.3
数据量H
所读取数据的个数以两个字节表示(注:此处说的数据量以字为单位)
数据量L
CRC H
CRC校验码在数据帧中以两个字节表示,主要用于检验数据传输过程中是否出错
CRC L
例:
需要读取2号站从第4个寄存器开始的3个寄存器,MODBUS主站发送的数据帧为:
02 03 00 04 00 03 44 39
从站在接收到主站的读命令以后,会发送一个返回命令帧,返回的命令帧格式如表3。
Done:指令完成时该位置1。
Error:当指令执行出现错误时,在该寄存器处显示出错误号。
例:
1、需要读取2号站地址为0004开始的3个寄存器里面的值到VB200地址开始的寄存器里,设置如图4。
2、需要将VB100地址开始的4个寄存器里面的值写到地址为004F开始的寄存器里面,设置如图5。
图4读数据设置图6写数据设置
2:功能码相同
3:两个数据帧的地址HoldStart相同
4:两个数据帧的数据量DataNum相同
如果从站在接收到数据以后,认为接收到的主站发送过来的数据是错误的,会返回一个异常帧给主站,告诉主站,从站接收到的数据是错误的。异常帧的数据格式如表10,命令帧不再具体说明。
表10异常帧格式
松下FP PLC 开放的通讯协定 MEWTOCOL
的計算方法相同。
錯誤 %01!錯誤碼 BCC Cr
錯誤碼是兩個 16 進制碼構成。錯誤碼 請參考各錯誤碼的說明。
註釋 : 在任何情況空白是不被包含在命令碼裡面。
6
讀取 Word 型態的資料數值 (輸入、輸出、內部繼電器、暫存器、計時器/計數器的設定值或經過值)
命令
%01#RCC X0000 0004 ** Cr %01#RCC Y0000 0004 ** Cr %01#RCC R0000 0004 ** Cr %01#RCC L0000 0004 ** Cr
C-NET 網路模組 ( AFP3463) (RS485) 遙控子局模組 (AFP3741, AFP3743) (RS422 port) MEWNET-H (AFP3700) (RS232C, 及連接網路) MEWNET-W (AFP3720) (連接網路) MEWNET-P (AFP3710) (連接網路) Modbus Unit (AFP3492, AFP3413) (RS232C, RS485)
松下 FP PLC 開放的通訊協定 MEWTOCOL
松下 FP 系列的 PLC 全部支援 MEWTOCOL-COM 這個開放的通訊協定。當你們想要對 PLC 的資 料或接點作監控時或者想要從電腦設定 PLC 的資料或接點時,MEWTOCOL-COM 這個開放的通訊 協定就相當好用。你(們)能夠使用例如 Basic, C, Pascal, Assembler 或者即使其他 PLC 也能傳送 ASCII 碼與我們的 PLCs 談話交流資料。 DDE 可以架構在 MS Excel 內來監視或設定資料,或者架構其他的圖控軟體內。
2
MEWTOCOL 的做法 電腦使用 ASCII 碼將命令傳送至 PLC, 這時候 PLC 會自動的回應命令。PLC 模式 (RUN/PROG )將會影響命令的回應。在 PROG 模式時,傳送至 PLC 的命令回應將全部為”0”。
松下PLC控制伺服电机应用实例
松下PLC控制伺服电机应用实例本文以松下FP1系列plc和A4系列伺服驱动为例,编制控制伺服电机定长正、反旋转的PLC程序并设计外围接线图,此方案不采用松下的位置控制模块FPG--PP11\12\21\22等,而是用晶体管输出式的PLC,让其特定输出点给出位置指令脉冲串,直接发送到伺服输入端,此时松下A4伺服工作在位置模式。
在PLC程序中设定伺服电机旋转速度,单位为(rpm),设伺服电机设定为1000个脉冲转一圈。
PLC输出脉冲频率=(速度设定值/6)*100(HZ)。
假设该伺服系统的驱动直线定位精度为±0.1mm,伺服电机每转一圈滚珠丝杠副移动10mm,伺服电机转一圈需要的脉冲数为1000,故该系统的脉冲当量或者说驱动分辨率为0.01mm(一个丝);PLC输出脉冲数=长度设定值*10。
以上的结论是在伺服电机参数设定完的根底上得出的。
也就是说,在计算PLC发出脉冲频率与脉冲前,先根据机械条件,综合考虑精度与速度要求设定好伺服电机的电子齿轮比!大致过程如下:机械机构确定后,伺服电机转动一圈的行走长度已经固定(如上面所说的10mm),设计要求的定位精度为0.1mm(10个丝)。
为了保证此精度,一般情况下是让一个脉冲的行走长度低于0.1mm,如设定一个脉冲的行走长度为如上所述的0.01mm,于是电机转一圈所需要脉冲数即为1000个脉冲。
此种设定当电机速度要求为1200转/分时,PLC应该发出的脉冲频率为20K。
松下FP1---40T 的PLC 的CPU本体可以发脉冲频率为50KHz,完全可以满足要求。
如果电机转动一圈为100mm,设定一个脉冲行走仍然是0.01mm,电机转一圈所需要脉冲数即为10000个脉冲,电机速度为1200转时所需要脉冲频率就是200K。
PLC的CPU输出点工作频率就不够了。
需要位置控制专用模块等方式。
有了以上频率与脉冲数的算法就只需应用PLC的相应脉冲指令发出脉冲即可实现控制了。
组态王与松下PLC利用FPX-COM5以太网通信(自己原创)
组态王与松下PLC利用FPX-COM5以太网通信(自己原创)基于FPX-COM5的松下PLC与组态王的以太网通信---------------------------松下电工技术工程师左工简介:松下FPX系列PLC是小型PLC的经典之作,与组态王作为上位机通信的方式有很多。
以太网的通信一直让一部分初学者很迷惑,但网上关于此类文章较少,在此,作者本着广大网友中初学者的角度出发,让大家工程实践中少走弯路。
配置:松下PLC:FPX-C30R,FPX-COM5组态王6.55版网线一根软件列表:Configurator WD,fpxct.bin文件,(这两个可以在松下官网下载)。
松下编程软件(FPWIN GR或者FPWINPRO),组态王6.55(建议大家买正版哈)下面我们开始:第一步:安装各个软件(这个省略)第二步:接线。
PLC接上电源,COM5插卡插在PLC本体上,网线将COM5连接到路由器、交换机或者直接连PC上,总之要与PC在同一个局域网内。
第三步:打开Configurator WD软件,点击搜索,会有局域网内的COM5列表。
如果直接连到电脑上,搜索后的结果是FPX_COM5,现在为FPX_ET,如下图示:选中列表里面的项目后,右键会有很多子项目,有IP设定,通信参数设定等,如下图:其中IP设置,设置为与PC机是同一个号码段内,此次PC机设为192.168.1.199,PLC设置为192.168.1.10.,如下图如果点成上面的自动获取IP,则在WD软件中就不能搜到COM5了,这时就需要把COM5背面有个小的拨码开关拨一下,复位一下,则IP重新变为192.168.1.5.注意里面的参数,波特率可以设置为115200,或者9600.动作模式选择为服务器模式或者客户端模式。
这里选服务器,通信协议可以选为计算机链接或者通用通信。
只要和电脑设置为一样就行。
这里设置为计算机链接。
选中列表后进行服务器连接,再按照下面的步骤进行。
松下PLC通信协议 (1)
松下电工FP系列可编程控制器松下电工(中国)有限公司制御ECComputer Link计算机链接MEWTOCOL-COM 特点1.用于程序处理和交互式操作.2.数据传输采用ASCII码的形式.3.首先由计算机发送指令.4.由PLC对指令自动进行相应响应.基本描述指令格式指令一览表触点和数据代码1.触点代码2. 数据代码错误代码关于校验码BCC(H)(L)①校验码是将指令中的各个ASCII字符的16进制(00~FF)进行异或求和后生成的. 该校验码也以两个ASCII码表示.例) % 01 # RC S X 0000 1D <CR>②如果在校验码处写入”**”, 则表示忽略校验码% 25H0 30H0 30H异或(XOR)求和BCC(H) = “1” (31H) BCC(L) = “D” (44H)指令说明1.读取单触点状态(指令代码: RCS)指令读取正常字符"$"表示正常的应答.触点数据2. 写入单触点状态(指令代码: WCS )指令读取正常字符"$"表示正常的应答.触点数据触点编号(4 字节) 3. 读/写触点状态的辅助说明(单触点) [ 定时器(T), 计数器(C), 触点代码 ]即使将内部T(C) 的编号作为C(T)编号读取, 也不会产生错误,而返回触点信息.(字单位块) RCC, WCC定时器和计数器触点无法在字单位块内操作。
如果用T 或C 的触点编号指定一个字的号码,则如下所示:触点代码 组编号 应 答 信 息 T(C) 0 T(C): 0 ~ 151 T(C): 16 ~ 312 T(C): 32 ~ 47 3T(C): 48 ~ 63: : : :15T(C):240 ~ 255BCD HEX (占3位) (占1位)X,Y,R,LT, C指令%# R C Pn (1字符)触点代码 (1字符)触点编号.(1) (4字符)触点代码 (1字符)触点编号.(n) (4字符)BCC (H) BCC (L)CR应答 读取正常%$ R C触点1 数据 (1字符)触点n 数据 (1字符)BCC (H)BCC (L)CR读取错误%!BCC (H)BCC (L)CR说明:字符"$"表示正常应答. 触点数据触点状态 数据 OFF "0" ON"1"目标站号(L) 目标站号(H)源站号(L) 源站号(H)错误代码BCD HEX (占3位) (占1位)多触点指定触点编号(n: 1 to 8 )参阅说明.源站号(L) 源站号(H)指令应答读取正常字符"$"表示正常应答.触点数据指令%# R C C触点代码 (1 字符)起始字编码 (4 字符)结束字编码 (4 字符)BCC (H) BCC (L)CR应答读取正常%$ R C触点数据1 (4 字符)触点数据n (4字符)BCC (H) BCC (L)CR读取错误%!BCC (H)BCC (L)CR说明:触点代码与单触点读取相同 触点数据顺序 字F CB 87 43 0③ ④ ① ②触点数据① ② ③ ④目标站号(L)目标站号(H)源站号(L)源站号(H)源站号(L) 源站号(H)错误代码BCDCrowd标识BCDX, Y, R, LHEX HEX指令%# W C C触点代码 (1 字符)起始 CH 编码 (4字符) 结束 CH 编码 (4字符)数据 1 (4 字符)数据 n(4 字符)BCC (H) BCC (L)CR应答 读取正常%$ W CBCC (H) BCC (L)CR读取错误%!BCC (H)BCC (L)CR说明:触点代码与单触点读取相同 触点数据顺序 字F CB 87 43 0③ ④ ① ②触点数据① ② ③ ④目标站号(L)目标站号(H)源站号(L)源站号(H)源站号(L) 源站号(H)错误代码Crowd标识BCDY, R, L BCDHEXHEX8. 按字单位预置触点(指令代码:SC)指令预置正常9.读取数据寄存器值(指令代码:RD )指令%# R D数据代码 (1 字符)起始数据编码 (5 字符)结束数据编码 (5 字符)BCC (H) BCC (L)CR应答 读取正常%$ R D数据 1 (4 字符)数据 n (4 字符)BCC (H) BCC (L)CR读取错误%!BCC (H)BCC (L)CR说明: 数据 (4 字符)D③④①②F C数据① ② ③ ④举例说明指令及其应答的具体情况Reading from the Data Area (RD 读取指令) 计算机主机读取PLC 内容。
松下PLC(FP-X )Modbus通讯实例
松下PLC(FP-X )Modbus通讯实例
本例以modbus rtu模式进行测试
1
名称型号数量说明
1松下PLC FP-X1PLC主机
2COM3模块松下1松下485通讯模块
3台达温控器DTC1000C1台达温控模块
4阳明温度探头PT-1001温度传感器
2
软件名称说明
1FPWIN GR(Version 2.94)松下PLC梯形图编程软件
2DTCOM_T(Simplified Chinese)台达温控器设置软件
(1.0017)DTCOM_T(Simplified Chinese) 3
通讯协议侦测
通讯协议设定
设定成功后,可以测试一下
测试成功之后,关闭温控器软件。
4、打开松下PLC编程软件FPWIN GR,并编写一下程序
然后打开PLC系统寄存器设置,选择COM1端口设置,然后把参数设置为下图所示
5、当所有软件都准备完成以后,进行硬件的连接。
A、台达温控器和传感器(PT-100)的接法
红线
1
2
3
白线
白线
B、台达温控器485接头和COM3模块接法
温控器+ 接 COM3 S+
温控器- 接 COM3 S-
6、检查线路和程序无误后,上电后,打开PLC编程软件,打开R10和R11
结果如下图
DT100显示的数据就是温度传感器的实时值。
(注:专业文档是经验性极强的领域,无法思考和涵盖全面,素材和资料部分来自网络,供参考。
可复制、编制,期待你的好评与关注)。
松下MODBUS指令例子PLC为从站.doc
采用串口调试工具与PLC 通讯指令解析MODBUS 报文格式MODBUS-RTU报文格式:起始位设备地址功能代码数据CRC 校验结束符T1-T2-T3-T48Bit8Bit n 个 8Bit16Bit T1-T2-T3-T4 注: CRC 采用多项式x16+x15+x2+1 进行计算MODBUS-TCP报文格式:事务标识协议标识报文长度设备标识功能代码数据16Bit16Bit16Bit8bit8Bit n 个 8BitMODBUS 功能代码表代名称( MODBUS )名称位操作 / 字操作FP7 对应功能码01 Read Coil Status Y? R 线圈读取位操作●02 Read Input Status X 接点读取位操作●03 Read Holding Registers DT 读取字操作●04 Read Input Registers WL? LD 读取字操作●05 Force Single Coils Y ? R 的单点写入位操作●06 Preset Signal Registers DT1 字写入字操作●08 Diagnostics 回路检查--15 Force Multiple Coils Y? R 多点写入位操作●16 Preset MultipleDT 多字写入字操作●Registers21 Mask Write 4XDT 屏蔽写入字操作Registers23 Read / Write 4X DT 读取 /写入字操作RegistersMODBUS 指令的参照编号和设备编号对应表MODBUS 参照编号BUS 上的数据( 16 进制)PLC 设备编号000001-002048 0000-07FF Y0-Y127F 线圈002049-034816 0800-87FF R0-2047F 输入100001-108192 0000-1FFF X0-X511F保持寄存器400001-465536 0000-FFFF DT0-DT65535300001-301024 0000-03FF WL0-WL1023 输入寄存器302001-318384 07D0-47CF LD0-LD16383 注:上表按照MODBUS 协议从高位设备对FP7 进行存取时, MODBUS 参照编号与 FP7 的运算设备编号的对照MODBUS-RTU指令例子Command 01 : Y? R 线圈读取( R101-R10C )下发指令: 11 01 08 A1 00 0C 6D 1D指令110108A1000C6D1D含义站号17指令码起始寄存器地址读取寄存器个数检验码CRC返回信息: 11 01 02 03 00 78 CF返回110102030078CF含义站号17指令码数据区字节数数据检验码CRC注:数据 03 00(表示继电器都是闭合状态, 03 表示 1~2 号导通,即 R101, R102 导通继电器换算 BUS 上对应号码方法:如: R101: 10*16+1=161 ,然后换算成十六进制数:00 A1 ,加上起始地址08 00,即 08A1Command 02 : X 接点读取(X101-X10C )下发指令: 11 02 00 A1 00 0C 78 0F指令11 02 00 A1 00 0C 78 0F含义站号 17 指令码起始寄存器地址读取寄存器个数检验码 CRC返回信息: 11 02 02 FF 0F 79 8F返回11 02 02 FF 0F 79 8F含义站号 17 指令码数据区字节数数据检验码 CRC X 接点换算 BUS 上对应号码方法:如: X101 : 10*16+1=161 ,然后换算成十六进制数:00 A1 ,加上起始地址00 00,即 00A1Command 03 : DT 读取( DT101-DT102 )下发指令: 11 03 00 65 00 02 D6 84指令11 03 00 65 00 02 D6 84含义站号 17 指令码起始寄存器地址读取寄存器个数检验码 CRC返回信息: 11 03 04 20 17 20 18 49 FC返回11 03 04 20 17 20 18 49 FC含义站号 17 指令码数据区字节数数据检验码 CRC 内部寄存器换算 BUS 上对应号码方法:如: DT101 :直接换算成十六进制数:00 65,加上起始地址00 00,即 00 65Command 04 : WL ? LD 读取( L101-L102 )下发指令: 11 04 00 0A 00 02 53 59指令11 04 00 0A 00 02 53 59 含义站号 17 指令码起始链接寄存器地址读取寄存器个数检验码 CRC返回信息: 11 04 04 00 06 00 00 0A 44返回11 04 04 00 06 00 00 0A 44含义站号 17 指令码数据区字节数数据检验码 CRC 链接寄存器换算 BUS 上对应号码方法:如: L101 :直接换算成十六进制数:00 0A ( bit2, ),加上起始地址00 00,即 00 0ACommand 05 : Y? R 线圈单点写入(R10)下发指令: 11 05 08 10 FF 00 8D 0F下发指令: 11 05 08 10 FF 00 8D 0F指令11 05 08 10 FF 00 8D 0F含义站号 17 指令码寄存器起始地址数据检验码 CRC 注:数据处 FF 00 表示置位, 00 00 表示复位返回信息: 11 05 08 10 FF 00 8D 0F返回11 05 04 00 06 00 00 0A 44含义站号 17 指令码寄存器起始地址数据检验码 CRC 继电器换算 BUS 上对应号码方法:如: R101: 10*16+1=161 ,换算成十六进制数:00 A1,加上起始地址08 00,即 08 A1Command 06 : DT1 字写入( DT201 )下发指令: 11 06 00 C9 FF 00 1A 94指令11 06 00 C9 FF 00 1A 94含义站号 17 指令码寄存器地址数据检验码 CRC返回信息: 11 06 00 C9 FF 00 1A 94返回11 04 04 00 06 00 00 0A 44含义站号 17 指令码寄存器地址数据检验码 CRC 继电器换算 BUS 上对应号码方法:如: DT201 :直接换算成十六进制数:00 C9Command 15 : Y? R 多线圈写入(R202-R20B )下发指令: 11 0F 09 42 00 0A 02 0F 00 BB 2A指令11 0F 09 42 00 0A 02 0F 00 BB 2A含义站号 17 指令码寄存器起始地址写入个数字数检验码数据CRC注: 1)如果写入字数与数据字数不一致,则PLC 视为无效数据2)如果“写入个数”大于“字数”,则PLC回复11 8F 03 05 F4(视站号而异)返回信息: 11 0F 09 42 00 0A 74 D4返回11 0F 09 42 00 0A 74 D4含义站号 17 指令码寄存器起始地址写入个数检验码 CRC 继电器换算 BUS 上对应号码方法:如: R202: 20*16+2=322 ,然后换算成十六进制数: 01 42,加上起始地址08 00,即 09 42Command 16 : DT 多字写入( DT400-DT404 )下发指令: 11 10 01 90 00 05 0A 10 00 11 00 12 00 13 00 14 00 94 0E指令11 10 01 90 00 05 0A 10 00 11 00 BB 2A12 00 13 00 14 00含义站号指令码寄存器写入个数字数数据检验码17 起始地址CRC注: 1)如果写入字数与数据字数不一致,则PLC 视为无效数据2)如果“写入个数”大于“字数” ,则 PLC 回复 11 90 03 0D C4(视站号而异)返回信息: 11 10 01 90 00 05 03 4B返回11 10 01 90 00 05 03 4B含义站号 17 指令码寄存器起始地址写入个数检验码 CRC 寄存器换算 BUS 上对应号码方法:如: DT400 :直接换算成十六进制数:01 90MODBUS-TCPMODBUS-TCP 使用的功能码和 PLC 设备在 BUS 上对应号码与MODBUS-RTU 是一致的。
松下FP-X通信指令
操作
接收完成标志位(R9038/R9048)为OFF的状态下, 从外部设备发送数据时进行以下操作. (在RUN运行后第一个扫描周期内R9038/R9048变成OFF, “0”被设置在由系统寄存器中指定的 接收缓冲区的起始字中 )
1) 接收到的数据被顺序地从接收缓冲区的第二个字的低位字节开始存放。 起始符和结束符不被存储
3-390
1) 发送 发送存储在数据表中从“S”地址开始的“n”个字节的数据, 由“D”中指定与外部设备相连接的 通信端口。能够自动添加和发送起始符和结束符 。可以发送的最大字节数是2048.
2) 接收 接收是由接收完成标志位(R9038/R9048)的ON/OFF控制的. 当接收完成标志变为 OFF时, 开始 从RS232或RS485端口接收数据, 并且自动存储在由系统寄存器 No.416到No.419中指定的数据 寄存器中. F159(MTRN)指令可以用来关闭接收完成标志位 (R9038/R9048) (允许接收). 可以接 收的最大字节数是 4096.
- 在传送过程中,传送完成标志位(R9039/R9049)保持OFF - 如果在系统寄存器NO.413或者NO.414设置了使用STX起始符, 则起始符自动添加在数据开始处. - 在系统寄存器NO.413或者NO.414中指定的结束符被自动添加在数据末尾.
发送数据
R9039 R9049 执行条件 (触发器)R0
起始符是自动添加的. - 可传送的最大字节数”n”是2048.
传送的数据表
作为被发送的数据表, 从”S”指定的数据寄存器开始. 开始发送时, 此处为待发送字节数. 发送结束时, 置0.
发送数据存储区 . (编号表示发送顺序 )
示例:
传送8个字符A , B , C , D, E , F , G , H(8个字节的数据) 本例中使用DT100到DT104作为数据表.
松下小型PLC通信编程培训
松下电器(中国)有限公司 元器件公司 © Panasonic Corporation of China Industrial Devices
FP-X0计算机链接通信(主站)程序示例 16
【程序】
控制频率为40.00HZ时 则设定DT32710=K4000 R32下降沿时将频率写入
松下电器(中国)有限公司 元器件公司 © Panasonic Corporation of China Industrial Devices
将DT100 为起始的发送缓冲区中保存的DT101~DT104 的8 个字节数据,从COM1端口发送。
数据的接收过程
接收完成标志为OFF 时,处于可接收状态。收到的数据保存在系统寄存器指定的接收缓冲区中。来 自外部设备的数据接收完成(接收终端代码)后,接收完成标志(R9038 或R9048)ON,禁止之后 的数据接收。接收下一数据时,要执行F159(MTRN)指令,关闭接收完成标志(R9038 或R9048), 只将接收字节数清零,指针返回最前端,缓冲区数据不清除。没有发送数据,只重复接收时,把发送字
变频器参数设置 (其他使用出厂值):
参数No. 参数说明
设置值
P003 P004 P139
运行指令 7 频率指令 7 奇偶校验 1
设置方法:点击菜单“选项” →“PLC系统寄存器设置”, 进行“COM口设置”,设置完点“OK”确定。
变频器参数混乱导致无法通信,可将其恢复出厂值, 再按上表进行设置。恢复出厂值方法:P151=1, 再重新上电。
17
其他 市售仪表 等。。
标志说明
编程口 R903E
COM/COM1 R9038
COM2 R9048
说明 数据接收完成标志
松下PLC通信协议
松下电工FP系列可编程控制器通信协议M E W T O C O L松下电工(中国)有限公司制御ECplc@int.mew.co.jpComputer Link 计算机链接MEWTOCOL-COM特点1. 用于程序处理和交互式操作.2. 数据传输采用ASCII 码的形式.3. 首先由计算机发送指令.4. 由PLC 对指令自动进行相应响应.基本描述指令格式应答信息 (正常时):应答信息 (发生错误时):指令一览表触点和数据代码1.触点代码2. 数据代码错误代码关于校验码BCC(H)(L)①校验码是将指令中的各个ASCII字符的16进制(00~FF)进行异或求和后生成的. 该校验码也以两个ASCII码表示.例) % 01 # RC S X 0000 1D <CR>②如果在校验码处写入”**”,则表示忽略校验码.求和BCC(H) = “1” (31H) BCC(L) = “D” (44H) 转换为字符指令说明1.读取单触点状态(指令代码: RCS)指令应答读取正常读取错误说明:字符"$"表示正常的应答.触点数据2. 写入单触点状态(指令代码: WCS )指令应答读取正常读取错误说明:字符"$"表示正常的应答.触点数据触点编号 (4 字节) 3. 读/写触点状态的辅助说明(单触点) [ 定时器(T), 计数器(C), 触点代码 ]即使将内部T(C) 的编号作为C(T)编号读取, 也不会产生错误,而返回触点信息.(字单位块) RCC, WCC定时器和计数器触点无法在字单位块内操作。
如果用T 或C 的触点编号指定一个字的号码,则如下所示:触点代码 组编号 应 答 信 息 T(C) 0 T(C): 0 ~ 151 T(C): 16 ~ 312 T(C): 32 ~ 473 T(C): 48 ~ 63: : : :15 T(C):240 ~ 255触点编号 (4 位)BCD HEX (占3位) (占1位)X,Y ,R,LT, C4. 读取多触点状态(指令代码: RCP )指令%# R C Pn (1字符)触点代码 (1字符)触点编号.(1) (4字符)触点代码 (1字符)触点编号.(n) (4字符)BCC (H) BCC(L)CR应答 读取正常%$ R C触点1 数据 (1字符)触点n 数据 (1字符)BCC (H)BCC(L)CR读取错误%!BCC (H)BCC(L)CR说明:字符"$"表示正常应答. 触点数据触点状态 数据 OFF "0" ON"1"目标站号(L) 目标站号(H)源站号(L) 源站号(H)错误代码BCD HEX (占3位) (占1位)多触点指定触点编号 (n: 1 to 8 )n=1 - 8参阅说明.源站号(L) 源站号(H)5. 写入多触点状态(指令代码: WCP )指令应答 读取正常读取错误说明:字符"$"表示正常应答. 触点数据n=1 - 8指令%# R C C触点代码 (1 字符)起始字编码 (4 字符)结束字编码 (4 字符)BCC (H) BCC(L)CR应答 读取正常%$ R C触点数据1 (4 字符)触点数据n (4字符)BCC (H) BCC(L)CR读取错误%!BCC (H)BCC(L)CR说明:触点代码与单触点读取相同 触点数据顺序 字F CB 87 43 0③ ④ ① ②触点数据① ② ③ ④目标站号(L) 目标站号(H) 源站号(L) 源站号(H)源站号(L) 源站号(H)错误代码BCDCrowd标识BCDX, Y , R, L HEXHEX指令%# W C C触点代码 (1 字符)起始 CH 编码 (4字符) 结束 CH 编码 (4字符)数据 1(4 字符)数据 n (4 字符) BCC (H) BCC(L)CR应答 读取正常%$ W CBCC (H) BCC(L)CR读取错误%!BCC (H)BCC(L)CR说明:触点代码与单触点读取相同 触点数据顺序 字F CB 87 43 0③ ④ ① ②触点数据① ② ③ ④目标站号(L) 目标站号(H)源站号(L) 源站号(H)源站号(L) 源站号(H)错误代码Crowd标识BCDY , R, L BCDHEXHEX8. 按字单位预置触点(指令代码:SC)指令应答预置正常预置错误9.读取数据寄存器值(指令代码:RD )指令%# R D数据代码 (1 字符)起始数据编码 (5 字符)结束数据编码 (5 字符)BCC (H) BCC(L) CR应答 读取正常%$ R D数据 1 (4 字符)数据 n (4 字符) BCC (H) BCC(L)CR读取错误%!BCC (H)BCC(L)CR说明:数据 (4 字符) D③④①②F C数据① ② ③ ④目标站号(L) 目标站号(H)源站号(L) 源站号(H)源站号(L) 源站号(H)错误代码D, L, FBCDBCDHEXHEX举例说明指令及其应答的具体情况Reading from the Data Area(RD读取指令)计算机主机读取PLC内容。
松下FP系列PLC编程手册第一章
松下FP系列PLC编程手册第一章第一章继电器、存储器和常数1.1 继电器、存储器和常数表1.1.1 FP-C1.1.2 FP-M1.1.3 FP01.1.4 FP11.1.5 FP21.1.6 FP2SH1.1.7 FP31.1.8 FP10SH1.1.9 继电器编号1.2 继电器说明1.2.1 外部输入继电器(X)1.2.2 外部输出继电器(Y)1.2.3 内部继电器(R)1.2.4 特殊内部继电器1.2.5 链接继电器(L)1.2.6 定时器(T)1.2.7 计数器(C)1.2.8 定时器和计数器共享项目1.2.9 脉冲继电器(P)1.2.10 错误报警继电器(E)1.3 存储器说明1.3.1 数据寄存器(DT)1.3.2 专用数据寄存器(DT)1.3.3 文件寄存器(FL)1.3.4 WX、WY、WR和WL1.3.5 链接数据寄存器(LD)1.3.6 定时器/计数器的设定值(SV)1.3.7 定时器/计数器的经过值(EV)1.3.8 索引寄存器(IX、IY)(用于FP-C, FP-M, FP0, FP1和FP3)1.3.9 索引寄存器(I0到ID) (用于FP2, FP2SH和FP10SH)1.4 常数说明1.4.1 整数型十进制常数(K)1.4.2 十六进制常数(H)1.4.3 实数(用于FP2、FP2SH和FP10SH)1.4.3.1 浮点数型实数(f)1.4.3.2 BCD型实数(H)1.4.4 字符常数(M)1.5 可在PLC中处理的数据范围1.5.1 可在PLC中处理的数据范围1.5.2 上溢出和下溢出1.1 继电器,存储器和常数表1.1.1 FP-C注释:1)有两种数据类型,一种是保持型,即保存在关断电源之前或从运行模式切换为编程模式之前存在的状态。
另一种是非保持型,即将该状态复位。
可通过设定系统寄存器改变保持型和非保持型的选择。
关于系统寄存器的详细内容,请见第8.2节。
2)定时器和计数器的点数可以通过设定系统存储器5来改变。
松下PLC(FP-X )Modbus通讯实例
松下PLC(FP-X )Modbus通讯实例本例以modbus rtu模式进行测试
1
2
3
通讯协议侦测
通讯协议设定
设定成功后,可以测试一下
测试成功之后,关闭温控器软件。
4、打开松下PLC编程软件FPWIN GR,并编写一下程序
然后打开PLC 系统寄存器设置,选择COM1端口设置,然后把参数设置为下图所示
5、当所有软件都准备完成以后,进行硬件的连接。
A 、台达温控器和传感器(PT -100)的接法
B、台达温控器485接头和COM3模块接法
温控器+ 接COM3 S+
温控器-接COM3 S-
6、检查线路和程序无误后,上电后,打开PLC编程软件,打开R10和R11
结果如下图
DT100显示的数据就是温度传感器的实时值。
通信网络-计算机与松下FP系列PLC串行通讯的实现
计算机与松下FP系列PLC串行通讯的实现Achieve Serial Communication between Computer and FP Series PLC(上海第二工业大学)刘正国 刘 唯liu Zheng Guo Liu Wei摘要:本文对松下FP系列PLC 的通讯协议进行了详细的介绍,阐述了计算机与松下FP系列PLC 之间串行通讯的原理和方法。
文章给出了串行通讯的主要程序,通过该通讯程序可实现计算机对松下FP系列PLC 的监控和控制。
关键词串行通讯;协议;可编程控制器中图分类号: TN919 文献标识码: A 文章编号:Abstract:The communication protocol of FP series PLC in this paper particularly.The principle and method which achieves serial communication between Computer and FP series PLCs is expatiated. The mostly program about serial communication is introduced and it can monitor FP series PLC through PC.Key words: serial communication; protocol;; programmable controller1引言可编程控制器(PLC)由于其高可靠性、编程简单、通讯性强、体积小、结构紧凑、安装维护方便等特点,在工业控制中得到了广泛应用。
另一方面,由于计算机在图形显示、数据处理、打印报表、中文显示等方面有很强的功能,所以现代化大型控制系统中常常将多台PLC与计算机连接起来构成多级分布控制系统。
在此类系统中,关键问题之一是如何实现PLC与计算机之间的通讯。
目前,在现有的PLC控制基础上充分利用计算机的的软硬件资源,开发出具有个性化的监控界面、数据处理程序和打印输出报表,已成为工业控制领域中许多用户的迫切要求。
MODBUS通讯协议及PLC编程通讯实例
MODBUS通讯协议及编程ModBus通讯协议分为RTU协议和ASCII协议,我公司的多种仪表都采用ModBus RTU 通讯协议,如:YD2000智能电力监测仪、巡检表、数显表、光柱数显表等。
下面就ModBu s RTU协议简要介绍如下:一、通讯协议(一)、通讯传送方式:通讯传送分为独立的信息头,和发送的编码数据。
以下的通讯传送方式定义也与MO DBUS RTU通讯规约相兼容:初始结构= ≥4字节的时间地址码 = 1 字节功能码 = 1 字节数据区 = N 字节错误校检 = 16位CRC码结束结构= ≥4字节的时间地址码:地址码为通讯传送的第一个字节。
这个字节表明由用户设定地址码的从机将接收由主机发送来的信息。
并且每个从机都有具有唯一的地址码,并且响应回送均以各自的地址码开始。
主机发送的地址码表明将发送到的从机地址,而从机发送的地址码表明回送的从机地址。
功能码:通讯传送的第二个字节。
ModBus通讯规约定义功能号为1到127。
本仪表只利用其中的一部分功能码。
作为主机请求发送,通过功能码告诉从机执行什么动作。
作为从机响应,从机发送的功能码与从主机发送来的功能码一样,并表明从机已响应主机进行操作。
如果从机发送的功能码的最高位为1(比如功能码大与此同时127),则表明从机没有响应操作或发送出错。
数据区:数据区是根据不同的功能码而不同。
数据区可以是实际数值、设置点、主机发送给从机或从机发送给主机的地址。
CRC码:二字节的错误检测码。
(二)、通讯规约:当通讯命令发送至仪器时,符合相应地址码的设备接通讯命令,并除去地址码,读取信息,如果没有出错,则执行相应的任务;然后把执行结果返送给发送者。
返送的信息中包括地址码、执行动作的功能码、执行动作后结果的数据以及错误校验码。
如果出错就不发送任何信息。
1.信息帧结构地址码:地址码是信息帧的第一字节(8位),从0到255。
这个字节表明由用户设置地址的从机将接收由主机发送来的信息。
松下PLC伺服控制案例
[串点成面·握全局]
一、近代交通业发展的原因、特点及影响 1.原因 (1)先进的中国人为救国救民,积极兴办近代交通业,促 进中国社会发展。 (2)列强侵华的需要。为扩大在华利益,加强控制、镇压 中国人民的反抗,控制和操纵中国交通建设。 (3)工业革命的成果传入中国,为近代交通业的发展提供 了物质条件。
动作模式
增量<相对值控制>
绝对<绝对值控制>
关于控制代码
原点复位(F171)指令
原点复位的动作模式
原点复位型Ⅰ
原点复位型Ⅱ
FPΣ位置控制
FPΣ 脉冲输出功能一览表
通道
使用的输入/输出接点编号
使用的存储区域
(No.)
Pulse输出 Sign输出 原点输入 近原点输入 控制中标志 过程值区域 目标值区域
• 两通道输出时,每通道最高5KHZ
FP0 脉冲输出功能一览表
通道
使用的输入/输出接点编号
使用的存储区域
(No.)
Pulse输出 Sign输出 原点输入 近原点输入 控制中标志 过程值区域 目标值区域
最大输 出频率
相关指令
CH0
Y0
Y2
X0
DT9052 <bit2>
R903A
DT9044 DT9045
2.特点 (1)近代中国交通业逐渐开始近代化的进程,铁路、水运和 航空都获得了一定程度的发展。 (2)近代中国交通业受到西方列强的控制和操纵。 (3)地域之间的发展不平衡。 3.影响 (1)积极影响:促进了经济发展,改变了人们的出行方式, 一定程度上转变了人们的思想观念;加强了中国与世界各地的 联系,丰富了人们的生活。 (2)消极影响:有利于西方列强的政治侵略和经济掠夺。
松下PLC通信协议
松下电工FP系列可编程控制器松下电工(中国)有限公司制御ECComputer Link计算机链接MEWTOCOL-COM特点1.用于程序处理和交互式操作.2.数据传输采用ASCII码的形式.3.首先由计算机发送指令.4.由PLC对指令自动进行相应响应.基本描述指令格式指令一览表触点和数据代码1.触点代码2.数据代码错误代码关于校验码BCC(H)(L)① 校验码是将指令中的各个ASCII 字符的16进制(00~FF)进行异或求和后生成的. 该校验码也以两个ASCII 码表示. 例) % 01 # RC S X 0000 1D <CR>② %25H 0 30H 030H异或(XOR)求和BCC(H) =指令说明1.读取单触点状态(指令代码: RCS)指令读取正常字符"$"表示正常的应答.触点数据2.写入单触点状态(指令代码: WCS )指令读取正常字符"$"表示正常的应答.触点数据触点编号(4 字节) 3. 读/写触点状态的辅助说明(单触点) [ 定时器(T), 计数器(C), 触点代码 ]即使将内部T(C) 的编号作为C(T)编号读取,也不会产生错误,而返回触点信息.(字单位块) RCC, WCC定时器和计数器触点无法在字单位块内操作。
如果用T 或C 的触点编号指定一个字的号码,则如下所示:触点代码 组编号 应 答 信 息 T(C) 0 T(C): 0 ~ 151 T(C): 16 ~ 312 T(C): 32 ~ 47 3T(C): 48 ~ 63: : : :15T(C):240 ~ 255BCD HEX (占3位) (占1位)X,Y,R,T, C4. 读取多触点状态(指令代码: RCP )指令% # R C Pn (1字符) 触点代码 (1字符)触点编号.(1) (4字符)触点代码 (1字符)触点编号.(n) (4字符)BCC (H) BCC(L)CR应答 读取正常% $ R C触点1 数据 (1字符)触点n 数据 (1字符)BCC (H) BCC(L)CR读取错误% !BCC (H) BCC(L)CR说明:字符"$"表示正常应答. 触点数据触点状态 数据 OFF "0" ON"1"目标站号(L) 目标站号(H)源站号(L) 源站号(H)错误代码BCD HEX(占3位) (占1位)多触点指定触点编号(n: 1 to 8 ) 参阅说明.源站号(L) 源站号(H)5. 写入多触点状态(指令代码: WCP )指令应答读取正常字符"$"表示正常应答.触点数据指令% # R C C触点代码 (1 字符)起始字编码 (4 字符) 结束字编码 (4 字符) BCC (H) BCC(L)CR应答读取正常% $ R C 触点数据 1(4 字符)触点数据n (4字符)BCC (H) BCC(L)CR读取错误% !BCC (H) BCC(L)CR说明:触点代码与单触点读取相同 触点数据顺序 字F C B 8 7 4 3 0③ ④ ① ②触点数据 ① ② ③ ④目标站号(L)目标站号(H)源站号(L) 源站号(H)源站号(L) 源站号(H)错误代码BCD Crowd标识BCDX, Y, R, LHEXHEX指令% # W C C触点代码 (1 字符)起始 CH 编码 (4字符)结束 CH 编码 (4字符)数据 1(4 字符)数据 n (4 字符) BCC (H)BCC(L)CR 应答 读取正常% $ W C BCC (H) BCC(L)CR读取错误% !BCC (H) BCC(L)CR说明:触点代码与单触点读取相同 触点数据顺序 字F C B 8 7 4 3 0③ ④ ① ②触点数据 ① ② ③ ④目标站号(L) 目标站号(H)源站号(L) 源站号(H)源站号(L) 源站号(H)错误代码Crowd标识 BCDY, R, L BCD HEXHEX8. 按字单位预置触点(指令代码:SC)指令预置正常9.读取数据寄存器值(指令代码:RD )指令% # R D数据代码(1 字符)起始数据编码 (5 字符) 结束数据编码 (5 字符)BCC (H) BCC(L) CR应答 读取正常% $ R D数据 1 (4 字符)数据 n (4 字符) BCC (H) BCC(L)CR读取错误% !BCC (H) BCC(L)CR说明:数据 (4 字符) D③ ④ ① ②F C数据① ② ③ ④举例说明指令及其应答的具体情况Reading from the Data Area (RD 读取指令) 计算机主机读取PLC 内容。
VC++6.0与松下PLC通讯实例
VC++6.0与松下PLC通讯实例在我们介绍松下PLC通讯之前,先来了解一下串口模拟软件,以方便我们在没有PLC的情况下模拟通讯过程,方便调试。
Computer Link 计算机链接MEWTOCOL-COM特点1. 用于程序处理和交互式操作.2. 数据传输采用ASCII 码的形式.3. 首先由计算机发送指令.4. 由PLC 对指令自动进行相应响应.基本描述指令格式指令信息应答信息 (正常时):应答信息 (发生错误时):指令一览表触点和数据代码1.触点代码2. 数据代码错误代码关于校验码BCC(H)(L)① 校验码是将指令中的各个ASCII 字符的16进制(00~FF)进行异或求和后生成的. 该校验码也以两个ASCII 码表示.例) % 01 # RC S X 0000 1D <CR>② 如果在校验码处写入”**”, 则表示忽略校验码.求和BCC(H) = “1” (31H) BCC(L) = “D ” (44H)6. 按字单位读取触点状态(指令代码:RCC )指令应答 读取正常读取错误说明:触点代码与单触点读取相同 触点数据顺序 字③1. 写入单触点状态(指令代码: WCS )指令应答读取正常读取错误说明:字符"$"表示正常的应答.触点数据9.读取数据寄存器值(指令代码:RD )指令应答 读取正常读取错误说明:数据 (4 字符) D举例说明指令及其应答的具体情况Reading from the Data Area(RD读取指令)计算机主机读取PLC内容。
程序示例:读取PLC的DT1105至DT1107的数据。
假定DT1105至DT1107 的数据为以下数值:DT1105 = 0063HDT1106 = 3344HDT1107 = 000AH计算机主机的指令显示如下:%01RD57CR起始码 DT1105 DT1107 BCC 终止符PLC的应答显示如下:%01$RD630044330A0062CR 起始码目标码指令名称 DT1105数据 DT1106数据 DT1107数据 BCC 终止符说明:“$”表示正常应答。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
松下PLC(FP-X )Modbus通讯实例
本例以modbus rtu模式进行测试
1、元器件材料表
名称型号数量说明
1松下PLC FP-X1PLC主机
2COM3模块松下1松下485通讯模块
3台达温控器DTC1000C1台达温控模块
4阳明温度探头PT-1001温度传感器
2、要用的软件(计算机系统Win_XP)
软件名称说明
1FPWIN GR(Version 松下PLC梯形图编程软件
2DTCOM_T(Simplified Chinese)台达温控器设置软件
DTCOM_T(Simplified Chinese) 3、先打开台达温控器设定软件DTCOM,对温控器通讯参数进行设定
通讯协议侦测
通讯协议设定
设定成功后,可以测试一下
测试成功之后,关闭温控器软件。
4、打开松下PLC编程软件FPWIN GR,并编写一下程序
然后打开PLC系统寄存器设置,选择COM1端口设置,然后把参数设置为下图所示
5、当所有软件都准备完成以后,进行硬件的连接。
A 、台达温控器和传感器(PT-100)的接法
红线
B 、台达温控器485接头和COM3模块接法 温控器+ 接 COM3 S+
温控器- 接 COM3 S-
6、检查线路和程序无误后,上电后,打开PLC 编程软件,打开R10和R11 结果如下图
1
2
3
温控器 白线 白线 传感器
DT100显示的数据就是温度传感器的实时值。