版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、S7-200MODBUS使用说明从站指令:MBUS_INIT指令MBLS_INIT指令用丁使能和初始化或禁止Modbus通讯。MBUS_INIT指令必须无错误的执行,然后才能够使用MBIS_SLAVE指令。在继续执行卜一条指令前,MBISINIT指令必须执行完并且Done位被立即置位oMBLS.INIT指令应该在每次通讯状态改变时只执行一次。因此,EN输入端应使用边沿检测元素以脉冲触发,或者只在第一个循坏周期内执行一次。参数说明:参数地址说明类型数值范围备注Mode选择通讯协议:输入1值将Port定义为Modbus协议并使能该协议,输入值为0将Port定义为PPI并禁止Modbus协议。位Ad
2、dr设置本站地址字节1到247之间Baud设置波特率。双字1200、2400、4800、9600、19200、38400.57600、115200Paril、设置校验。字节0无校验-奇校验偶校验所有设置使用一个停止位。Delay通过为标准Modbus信息超时增加指定数駅的亳秒,扩展标准Hodbus信息结束超时条件整型0到32767单位:亳秒MaxIQ设置可使用的I和Q点数整型其数值可为0到128。数值为0则禁止对输入和输岀的读写建议MaxIQ的取值为128,即允许访问S7200的所有I点和Q点。MaxAI设置可使用的字输入寄存器(AI)的个数整型0到32。值为0则禁止读模拟输入。MaxAI的建
3、议值如下:-CPU221为0-CPU222为16-CPU224,CPU226和CPU224XP为32。MaxHold设置可以使用的Y存储区字保持寄存器的个数整型0到32767单位:字HoldStart设置可以使用的Y存储区的保持寄存器的起始地址双字指向Y存储区的指针Done当MBLS_INIT指令完成时,Done输出接通位ErrorError输出字节包含该指令的执行结果。字节2.MBUS.SLAVE指令MBLS.SLAVE指令用丁服务来自Modbus主站的请求,必须在每个循环周期都执行,以便检查和响应Modbus请求。当EN输入接通时,该指令在每一循坏周期内执行。MBUS_SLAVE指令无输入
4、参数。参数说明:参数地址说明类型数值范围备注Done当MBUS_SLAVE指令响应Modbus请求时Done输出接通。如果没有服务的请求,Done输出会断开。位Error输岀包含该指令的执行结果。字节错误代码如下表该输出只有Done接通时才有效。如果Done断开,错误代码不会改变。主站指令:1.MBUS.CTRL指令使用SM0.0调用MBUS.CTRL指令完成主站的初始化,并启动其功能控制。参数说明:参数地址说明类型数值范围备注Mode设置通讯模式:为1时,使能Hodbus协议功能;为0时恢复系统为PPI协议位Baud设置波特率双字11200,2400,4800,9600,19200,3840
5、0,57600,115200Paritv设置校验。字节0无校验奇校验偶校验所有设置使用一个停止位。Timeout.1站等待从站响应的时间,以亳秒为单位整型1-32767典型的设置值为1000亳秒(1秒)Done完成位,初始化完成,此位会自动置1位Error初始化错误代码字节0无错误校验选择非法波特率选择非法模式选择非法只有在Done位为1时有效2.MBUS.MSG指令使用SMO.0调用ModbusRTU主站读写子程序MBUSMSG指令,First接通发送一个Modbus请求。同一时刻只能有一个读写功能(即MBLS.MSG)使能。各参数如下:参数地址说明类型数值范围备注First读写请求位位每一
6、个新的读写请求必须使用脉冲触发Slave设置从站地址字节1-247RW操作命令字节0读1写Addr选择读写的数据类型双字0000至Oxxxx-开关駅输出1000至lxxxx-开关最输入3000至3xxxx-模拟最输入4000至4xxxx一一保持寄存器Count通讯的数据个数(位整型Modbus主站每或字的个数)一个MBUS.MSG指令可读/写的最人数据駅为120个字DataPtr数据指针,如果是读指令,读回的数据放到这个数据区中:如果是写指令,要写出的数据放到这个数据区中Done完成位,读写功能完成位位Error错误代码错误代码如下只有在Done位为1时,错误代码才有效_0=无错误=响应校验错
7、误=未用=接收超时(从站无响应)=请求参数错误(slaveaddress,Modbusaddress,count,RW)=Modbus/自由口未使能=Modbus正在忙于其它请求=响应错误(响应不是请求的操作)=响应CRC校验和错误=从站不支持请求的功能=从站不支持数据地址=从站不支持此种数据类型=从站设备故障=从站接受了信息,但是响应被延迟=从站忙,拒绝了该信息=从站拒绝了信息=从站存储器奇偶错误使用卜面的例程你可以在S7-200CPUZ间设置一个简单的Modbus通讯。这个例子是关丁Modbus功能码6的(写从站保持寄存器),也可以作为其他所支持的功能码:1,2,3,4,5,15和16的基
8、本参数设置步骤。要求:耍使用Modbus协议必须先在STEP7Micro/Win安装指令库。Modbus主站协议只支持STEP7Micro/WinV4.0SP5及其以上版本,1硕件设置2.参数匹配3.指令库的存储地址4保持寄存器值得传输1.硬件设置例程中的Modbus通讯是在两个S7-200CPU的0号通讯II间进行的(最好每个CPU都有两个通讯口)。在主站侧也可以选择相应库文件”MBUS_CTRL_P1H和,MBUS_MSG_PT,通过1号通讯II通信。通讯II1与Micro/WIN建立PG或PC连接,两个CPU的通讯II0通过PPI电缆进行连接(电缆的针脚连接为2,3,7,8)o參数匹配対
9、MODBUS通讯,主站侧需要程序库”MBUS_CTRL”和“MBUS_MSG”,从站侧需要程序库HMBUSINITnandnMBUSSLAVE”。在Micro/WIN中您需耍为主站和从站新建一个项目,程序与参数设置见图.02口必须耍保证主站与从站的占au(T和”Parity”的参数设置耍一致,并且程序块啊BUS_MSG“中的,Slavel1地址要与程序块WBUS_INIT”中的叭dd广所设置的一致(见图.02)。Micro/WIN1统块”中设置的0通讯【I的波特率与MODBUS协议无关fMode11=T%图.02卜面的表格列出了程序块各个参数选项及其意义主站MBUS_CTRL-意义选取EN使能
10、Mode协议选择0二PPI,仁modbusBaud传输速率kbps1200,2400,4800,9600,19200,38400,57600,115200Parity校验选择0=无校验,仁奇校验,2=偶校验Timeout从站的最长响应时间msDone完成”标志位Error错误代码n表011)参看STEP7Micro/WIN帮助:,MODBUS主站执彳亍MBUS_MSG时的错误代码MBUS_MSGnoMBUSMSG意文选項EN使能First读写请求位Slave从站地址RW读或写g读,仁写Addr读写从站的数拯地址0.128=数字虽输出Q0.0.Q15.71001.10128=数字量输入I0.01
11、15.730001.30092=模拟量输入AIW0.AIW6240001.49999=保持寄存器2Count位或字的个数(Oxxxx,1xxxx)/words(3xxxx,4xxxx)DataPtrV存储区起始地址指针Done完成标志位Error错误代码1)表02。参看STEP7Micro/WIN帮助:MODBUS主站执行MBUS.MSG时的错误代码MBUS_MSG*o从站MBUSJNIT意义选環EN使能Mode协议选择0=pp|,1=MODBUSAddr从站地址Baud传输速率kbps1200,2400,4800,9600,19200,38400,57600,115200Parity校验O无
12、校验,1=奇校验,2二偶校验Delay超时时间msMaxlQ可使用的数字输入输出点数2)MaxAl可使用的模拟厳输入点数2)MaxHold保持寄存器字的最大数嵐2)HoldStart保持寄存器的起始地址(40001)Done完成标志位Error错误代码3)表032)最人的地址取决于所用CPU的类型及其最人值。)参看STEP7Micro/WIN帮助:“MODBUS从站协议的错误代码”。MBUS_SLAVE参数克义选项EN使能Done完成标志位Error错误代码3)表04参看STEP7Micro/WIN帮助MODBUS从站协议的错误代码”。库的存储地址项目完成后必须耍在Micro/WIN中定义库的
13、存储地址,当定义完存储区后,耍保证在任何情况卜不能再被其它程序所使用(主站侧:HDataPtrH+”Count”从站侧:HHoldStartu+nMaxHold)图.03保持寄存屡值的传输将程序卜载;到相应的CPU后,可以在状态表中给主站侧的V存储区赋值,然后监视从站的变化。当主站的10.0使能后,VW2中的内容就被发送到从站并写入从站的VW2。保持寄存器值的传输见图.04指针-DataPtr-代表了V区被读的起始地址。参数Count表明了地址Addr=”4xxxx“(保持寄存器)以字为单位被读的个数。主站中被读取的V存储区被写入地址为”Addr“=”40002”(RW=n1)的保持寄存器中。
14、保持寄存器是以字为单位工作的,它与从站的V区地址对应。指针-HoldStart明确了与保持寄存器起始地址40001相対应的V存储区的初始地址。可以这样计算从站的V区目标指针:2*(Addr40001)+HoldStart=2*(4000240001)+&VB0=&VB2另外,要保证MaxHold定义的数据区能够包含主站侧所要写入的数据区:MaxHold=Addr40001+Count=4000240001+1=2厂兰富旷兰臥(38KB)Fig.04关JSTEP7Micro/WINMOBDUS库的更多信息可以参看S7-200系统手册(EntryID1109582)和STEP7Micro/WIN帮
15、助。如何在STEP7Micro/WIN中找到ModbusRTU协议和USS协议操作库?个说明I在STEP7Micro/WIN中,ModbusRTU协议和USS协议操作库位丁操作树的“库”文件夹中,:MODBUS函数库要求STEP7Micro/WIN为V3.2或更高版木。FT0TCP叶PieEdk3M.C岭FVaam0l=cT5rWT-edeCartrurkiMd;frJSrEElfrtF&fBtLpp;.CTRL;.MWOMlX;_CIAk.PlCM&WSJfW戶jHctxjj$ly/ePota(vlOjOM3L5.IWTnMftWSi.SLAVtFT0TCP叶FT0TCP叶$PG/PS:lr
16、ttsce8uou8russ.wruSS.CTRlU55.FFM_USS.FPM.OUSSM冃usslvniwU55bWFHDUSS.WFM.Russ.wirpi应口口匚piUSS.F.W.PIUS$.W?M_O.P12(24KB)USS.RPM_H_F15S.WFM.W.P1USS.WPM.D_P1USS.VFMfiPI图1:添加函数库这些库是附加函数库,并非组态软件STEP7Micro/WIN的纽成部分。您如果需要使用ModbusRTU协议,必须购买SIMATICSTEP7Micro/WINADDON:FunctionLibraryV1.1(USS+MODBUS)forSTEP7Micro/WIN32”软件。这个可选附加函数库的订货号是6ES78
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年护理人员分层培训、考核计划表
- 《粉末冶金成形》课件
- 妇科医疗质量分析
- 小学二年级数学100以内加减法竖式计算同步监控口算题
- 医疗产品说明
- 《汽车新式装备》课件
- 微课如何撰写岗位说明书之基本信息财经管理人力资源管理系
- 特别护理记录单的书写方法记录内容
- 《员工安全技术教育》课件
- 《儿童脑瘫康复》课件
- 2020心肌梗死后心力衰竭防治专家共识课件
- 蓄水池防水施工方案
- 隧道的衬砌计算(85页清楚明了)
- 人教版八年级(初二)数学上册全册课件PPT
- Q∕GDW 10202-2021 国家电网有限公司应急指挥中心建设规范
- CNAS-CL01:2018(ISO17025:2017)改版后实验室首次内审及管理评审资料汇总
- 护理不良事件-PPT课件
- 商业银行两地三中心数据容灾备份方案建议书
- 审核评估报告(课堂PPT)
- 体育运动中的二次函数
- 烹饪烹饪营养与卫生教案
评论
0/150
提交评论