6ES7231-7PF22-0XA0设置参数
PC/PPI电缆 | |
S7-200编程电缆,5米,光电隔离,内置RS232C/RS485转换,带RTS开关。用于S7-200与PC或DTE设备之间的连接,如打印机,条码阅读器等。 | 6ES7901-3BF21-0XA0 |
返回TOP
总体特性 | |
电源电压 | 14.4 to 28.8 VDC |
24V电源的电流 | 50 mA RMS max. |
方向改变延时:接收的RS232起始位边沿到发送的RS485起始位边沿 | 12.μs max. |
方向改变延时:接收的RS232停止位边沿到发送的RS485停止位边沿 | 1.4(1.4×11/baud)=1.6ms @ 9600 baud |
延时 | 4μs max., RS-485 toRS-232, 1.2μs max., RS-232 to RS-485 |
隔离 | 500VDC |
RS-485一侧的电气特性 | |
共模电压范围 | -7V to +12V, 1 second3V RMS |
接收器输入阻抗 | 5.4KΩ min |
终端 | 10KΩ to +5V onB,PROFIBUS pin 3 10KΩ to GND on A,PROFIBUS pin 8 |
接收器阈值/灵敏度 | +/- 0.2V, 60mV typ,hysteresis |
发送器差分输出电压 | 2V min.@ RL=100Ω 1.5V min.@ RL=54Ω |
RS-232一侧的电气特性 | |
接收器输入阻抗 | 3Kωmin minimum |
接收器阈值/灵敏度 | 0.8 V min.low,2.4Vmax,high, 0.5 V typical hysteresis |
发送器输出电压。 | +/- 5V min @RL=3KΩ |
编程:CPU 221/222/224/226/226XM | |
STEP 7-Micro/WIN32V3.1编程软件可以对所有的CPU 221/222/224/226/226XM功能进行编程。也可以使用STEP7-Micro/WIN16 V2.1软件包,它只支持对S7-21x同样具有的功能进行编程。 | |
STEP7-Micro/DOS不能对CPU221/222/224/226/226XM编程。如果使用PG/PC的串口编程,则需要使用PC/PPI电缆。 | |
如果使用STEP7-Micro/WIN32 V3.1编程软件,则也可以通过SIMATIC CP 5511或CP5611编程。在这种情况下,通讯速率可高达187.5kbit/s。 | |
可以利用PC/PPI电缆和自由口通讯功能把 S7-200 CPU 连接到许多和RS-232标准兼容的设备。有两种不同型号的 PC/PPI 电缆: | |
带有RS-232口的隔离型 PC/PPI电缆,用5个DIP开关设置波特率和其它配置项 (见图7)。有关隔离型PC/PPI电缆的技术规范,请参阅附录A。 | |
带有RS-232口的非隔离型 PC/PPI电缆,用4个DIP开关设置波特率。 有关非隔离型PC/PPI电缆的技术规范,请参阅S7-200 可编程控制器系统手册。 |

图7:当数据从RS-232传送到RS-485口时,PC/PPI电缆是发送模式。当数据从RS-485传送到RS-232口时,PC/PPI电缆是接收模式。当检测到RS-232的发送线有字符时,电缆立即从接收模式转换到发送模式。当RS-232发送线处于闲置的时间超过电缆切换时间时,电缆又切换到接收模式。这个时间与电缆上的DIP开关设定的波特率选择有关。 |

PC/PPI电缆波特率开关选择
波特率 | 开(1=上) |
38400 | 000 |
19200 | 001 |
9600 | 010 |
4800 | 011 |
2400 | 100 |
1200 | 101 |
600 | 110 |
返回TOP
PC/PPI 电缆的调制解调器使用
调制解调器使用 | 开关(1=上) |
11-位调制解调器 | 0 |
10-位调制解调器 | 1 |
返回TOP
PC/PPI电缆引脚
Pinout | 开关(1=上) |
DCE | 0 |
DTE | 1 |
返回TOP
RS-485到RS-232 DCE的连接器引针
RS-485 连接器引针 | RS-232 连接器引针 | ||
针号 | 信号说明 | 针号 | 信号说明 |
1 | 地(RS-485逻辑地) | 1 | 数据载波检测(DCD)(不用) |
2 | 24 V返回(RS-485逻辑地) | 2 | 接收数据(RD)(从PC/PPI电缆输出) |
3 | 信号 B(RxD/TxD+) | 3 | 发送数据(TD)(输入到PC/PPI) |
4 | RTS(TTL 电平) | 4 | 数据终端就绪(DTR)(不用) |
5 | 地(RS-485逻辑地) | 5 | 地(RS-232 逻辑地) |
6 | +5V(带100W串联电阻) | 6 | 数据设置就绪(DSR)(不用) |
7 | 24 V 电源 | 7 | 申请发送(RTS)(不用) |
8 | 信号 A(RxD/TxD-) | 8 | 清除发送(CTS)(不用) |
9 | 协议选择 | 9 | 振铃指示器(RI)(不用) |
返回TOP
RS-485到RS-232 DTE的连接器引针
RS-485 连接器引针 | RS-232 连接器引针1 | ||
针号 | 信号说明 | 针号 | 信号说明 |
1 | 地(RS-485逻辑地) | 1 | 数据载波检测(DCD)(不用) |
2 | 24 V返回(RS-485逻辑地) | 2 | 接收数据(RD)(输入到PC/PPI电缆) |
3 | 信号 B(RxD/TxD+) | 3 | 发送数据(TD)(从PC/PPI电缆输出) |
4 | RTS(TTL 电平) | 4 | 数据终端就绪(DTR)(不用) |
5 | 地(RS-485逻辑地) | 5 | 地(RS-232 逻辑地) |
6 | +5V(带100W串联电阻) | 6 | 数据设置就绪(DSR)(不用) |
7 | 24 V 电源 | 7 | 申请发送(RTS)(从PC/PPI电缆输出) |
8 | 信号 A(RxD/TxD-) | 8 | 清除发送(CTS)(不用) |
9 | 协议选择 | 9 | 振铃指示器(RI)(不用) |
1调制解调器需要一个阴-阳型9到25针的转换 |
Siemens编程器S7-200系列用在中小型设备上的自动系统的控制单元,适用于各行各业,各种场合中的检测,监测及控制。
在这里,和大家一起来讨论S7-200几个使用方面的情况。
1.步进,伺服脉冲定位控制。
在设备的控制系统中,有关运动控制是很重要的,下面我们来看一看西门子S7-200系列PLC怎样来实现这 个功能。
确定使用哪个端口来发脉冲,如采用Q0.0发脉冲,则它的控制字为SMB67,脉冲同期为SMW68,脉 冲个数存放在SMD72中,
下面是控制字节的说明:
Q0.0 Q0.1 控制字节说明
SM67.0 SM77.0 PTO/PWM更新周期值 0=不更新,1=更新周期值
SM67.1 SM77.1 PWM更新脉冲宽度值 0=不更新,1=脉冲宽度值
SM67.2 SM77.2 PTO更新脉冲数 0=不更新,1=更新脉冲数
SM67.3 SM77.3 PTO/PWM时间基准选择 0=1微秒值,1=1毫秒值
SM67.4 SM77.4 PWM更新方法 0=异步更新,1=同步更新
SM67.5 SM77.5 PTO操作 0=单段操作,1=多段操作
SM67.6 SM77.6 PTO/PWM模式选择 0=选择PTO,1=选择PWM
SM67.7 SM77.7 PTO/PWM允许 0=禁止PTO/PWM,1=允许
这样根据以上表格,我们得出Q0.0控制字:SMB67为:10000101
采用PTO输出,微妙级周期,发脉冲的周期(也就是频率)与脉冲个数都要重新输入。10000101转化为 16进制 为85,有了控制字以后,我们来写这一段程序:
根据上面这段程序,我们知道了控制字的使用,也知道步进电机的脉冲周期与冲个数的存放位置(对 Q0.0来说是SMW68与SMD72)。当然,VW100与VD102内的数据不同的话,步进电机的转速和转动圈数就不一样。
还有一点需要说明得是:M0.0导通---PLC捕捉到上升沿发动脉冲输出后,想停止的话,只须改变端口脉冲的 控制字,再启动PLS即可,程序如下:
2.高速计数功能。
西门子S7-200系列PLC具有高速计数的功能;举一例子来谈谈高速计数的用途,我们采用普通电机来带动丝杆转动,我们想控制转动距离,怎么来解决这个问题?那么我们可在电机另一头与一编码器联接,电机转一圈,编码器也随之转一圈,根据规格发出不同的脉冲数。当然,这些脉冲数的频率比较高,PLC不能用普通的上升沿计数来取得这些脉冲,只能通过高速计数功能了。
启动高速计数功能,也要具有控制字
HSCO HSC1 描述
SM37.0 SM47.0 复位有效电平控制位 0=高电平有效, 1=低电平有效
SM37.1 SM47.1 启动有效电平控制位于 0=高电平有效, 1=低电平有效
SM37.2 SM47.2 正交计数器速率选择 0=4X计数率, 1=1X计数率
SM37.3 SM47.3 计数方向控制位 0=减计数, 1=正计数
SM37.4 SM47.4 向HSC中写入计数方向 0=不更新, 1=更新计数方向
SM37.5 SM47.5 向HSC中写入预置值 0=不更新, 1=更新预置值
SM37.6 SM47.6 向HSC中写入当前值 0=不更新, 1=更新当前值
SM37.7 SM47.7 HSC允许 0=禁止HSC, 1=允许HSC
参照上面的表格,我们选择HSC1高速计数器,控制字为SMB47,现在我们启动高速计数器HSC1,选择为增计数,更新计数方向,重新设置值,更新当前值:这样的话,HSC1的启动控制高为:11111000转化为16进制为 F8,将启动计数器时当前值存放在SMD48中,将预存置放在SMD52中,具体的程序 如下:
同样的,如果计数器在工作状态下想停止计数器,也必须改变它的控制字后,启动HSC具体程序 如下:
3. PID回路控制功能。
西门子S7-200系列PLC的PID控制相当的简单,可以通过micro/win软件的一个向导程序,按照提示,一步一步执行您所要求PID控制的属性即可,在这里谈一谈PID这三个参数的具体意义:P为增益项,P越大,响应起就快,在调节流量阀时:设定流量为50%,当目前流量接近50%,刚超过,如果P值很大的话,那么流量阀会马上会关闭,而不会控制在某一区域。这就是增益项太大引起。在调节的过程中应该先将P值调节比较适当了,再去调节I值,它为积分项,是在控制器回路中控制对当前值与设定值相等的偏差范围。D为微分项,主要作用是避免给定值的微分作用而引起的跳变。
在现场的PID参数的调整过程中,针对西门子S7-200型PLC我的建议是在不同的控制阶段,采用不同的PID参数组,具体而言就是当目前距离设定值差距较大时,采用P值较大的一套PID参数,如果当前值快接近设定值范围时,采用P值较小的一套PID参数。
变频器进行远程启动需要进行以下几项设置:
A、在接触器上选取一常开点(NO),常开点的一端接变频器端子SD-5,常开点的另一端接变频器端子SD-20,SD-19和SD-9进行连接,如下图所示:
B、 P0731设置成52.1(数字输出1功能设置成变频器运行准备就绪);
C、P0700设置成2(由端子排输入),P0701设置成1(数字输入1的功能设置成接通正转/停车命令);
个人
变频器在运行准备就绪后,输出继电器SD-19,SD-20连通,此时SD-5和SD-9将会触发一个高电平,变频器接收到一个高电平信号后,开始运行。
1.前言
可编程控制器(PLC)作为一种高性能的工业现场控制装置,已广泛地用于工业控制的各个领域。目前,工业自动控制对PLC的网络通信能力要求越来越高, PLC与上位机之间、PLC与PLC之间都要能够进行数据共享和控制。
飞剪控制系统要求在远离PLC的控制室里,实时监控电机、供纸、刀辊等设备。上位机为普通PC机,下位机为 SIEMENS S7-222 PLC。在实际开发中,采用自由口通信模式,自定义 PC与 PLC的通信协议,用Step7编写PLC端的通信程序,而在 PC端用VC6.0实现串行通信的控制和监控界面的显示。
2.通信方式及原理
S7-200系列PLC通信方式有三种:一种是点对点(PPI)方式,用于与西门子公司的PLC编程器或其它产品通信,其通信协议是不公开的。另一种为DP方式,这种方式使得PLC可通过Profibus的DP通信接口接入现场总线网络,从而扩大PLC的使用范围。后一种方式是自由口(FreePort)通信方式,由用户定义通信协议,实现PLC与外设的通信。本系统中采用自由口通信方式。它是S7-200系列PLC一个很有特色的功能。这种方式不需要增加投资,具有较好的灵活性,适合小规模控制系统。自由口通信在物理接口上要求双方都使用RS485接口,波特率高为38400bps。PC机的标准串口为RS232,但西门子公司提供的PC/PPI电缆带有RS232 /RS485电平转换器,在不增加任何硬件的情况下,可以很方便地将PLC和PC机互联。
2.1自由口模式的初始化
PLC的自由口模式通信编程是对串口初始化。对S7-200PLC的初始化是通过对特殊存储字节SMB30(端口0)写入通信控制字,来设置通信的波特率、奇偶校验、停止位和数据位数。显然,这些设定必须与上位机设定值相一致。还可选择通信模式和主从站模式,各具体存储位内容可参考SIMATIC S7-200系统手册。
2.2自由口模式下收发数据
初始化自由端口通信模式后,就可以进行数据的收发。
(1) 发送数据指令 XMT
格式:XMT Table,Port。可以用 XMT指令发送数据,XMT指令激活发送缓冲区(从Table开始的变量存储区)中的数据。数据缓冲区的个数据指明了要发送的字节数,Port指明了用于发送的端口,缓冲区多可以有255个字符。在发完缓冲区的后一个字符时,会产生一个中断 (对端口 0为中断事件9)。本例的XMT缓冲区的格式如表1。其中,状态字节表示PLC是否正确接收了上位机所传数据;上传数据为PLC上传给PC的数据,需将9字节的16进制数编码为18字节的ASIIC码,字节数为18;BCC为上传数据的异或和,同样将16进制数编码为ASIIC码;结束字符的值为26。
表1 发送缓冲区
表2 接收缓冲区
RCV Table,Port。用 RCV指令接收多为255个字符的数据,这些字符存储在缓冲区中。在接收到结束字符时,会产生一个中断(对端口 0为中断事件23)。本例的RCV缓冲区的格式如表2。其中,命令类型表示上位机让PLC 执行什么操作,如读或写;目标站号是分配给PLC的一个代号;起始地址是PLC要进行读写的存储区的起始地址;读写字节数是PLC接到命令后,对存储区进行读写的字节数,本例中多写入16字节、读出9字节;写入数据是上位机要写入PLC的数据,对于读命令不起作用;BCC是从命令类型开始到写入数据为止的43字节数据的异或和。从目标站号到BCC这几项内容,都是把16进制数编码为ASIIC码来表示的。
3.自由口通信程序设计
通信程序的设计需遵循一定的规则,如中断通信处理程序要短小精悍、要避免XMT与RCV指令在一个端口执行等。整个PLC通信程序包括主程序、通信初始化子程序、校验子程序、读写数据子程序和发送完成、接收完成中断服务程序。
3.1主程序
通信主程序是PLC实现接收、发送功能的主框架。其主要流程为查询接收是否完成,校验,再根据命令类型执行读、写等操作。它的作用是控制程序的主流程,校验、读写等具体工作由相应的子程序完成。流程如图1。
3.2通信初始化程序
通信初始化子程序设置自由口通信的有关参数,对接收信息控制寄存器SMB87写入控制字,定义起始字符、结束字符和接收超时。设好自由口模式的这些参数后,还要连接中断事件和中断服务程序,并打开中断。后,把接收、发送缓冲区写入初值即可。
3.3校验子程序
每次PLC接收完1帧数据,就调用此子程序进行校验。进入子程序后,先清除接收完成标志位,再计算所接收数据的校验和BCC。如果正确,还要检验结束字符是否为‘G’。不是的话,说明数据报文长度不对或传输过程中发生了错误,需要向上位机返回相应的出错信息。流程如图2。
图1 主程序流程图
图2 校验子程序流程图
3.4读、写数据子程序
这2个子程序的任务是把PLC存储区中的数据发给上位机或把上位机传来的数据写入PLC存储区。二者的流程相似,只是数据流向不同。进入子程序后,先停止接收,完成数据传输,后发送应答报文。不同之处就是应答报文中的状态字节:读操作时是1、写操作时是2。
3.5接收、发送完成中断服务程序
当PLC接收到结束字符后产生中断(事件号9)或数据发送结束后产生中断(事件号23),这两个服务程序被执行。接收完,先把接收完标志置1,启动接收。发送完,先清除校验正确标志,再把接收缓冲区中的结束字符和计算出的接收BCC结果清零,后启动接收。
由于是半双工通信,PLC无论是发送和接收完数据后,都必须将通信口设置成接收状态。否则,PLC就接收不到任何数据了。
4.上位机的通信编程
上位机通过RS232口与PLC进行通信,bbbbbbs环境串口通信程序利用VC6编写。VC6编写串口通信程序通常有MSCOMM控件和通信API两种方法。二者各有优缺点。MSCOMM控件封装了微机串口通信的基本功能,使用者只需设置一些基本参数,就可以通过串口收发数据了。这种方法简单,易于编程人员使用,现在已有很多例子供参考。用通信API编写串口程序相对复杂一些。开发者要直接使用bbbbbbs提供的一组API函数来完成上述控件封装好的功能。使用API编程比使用控件更复杂,但也更灵活。通信控件已经封装好的功能是无法改变的,而使用API就能针对通信协议编写效率更高的代码。
在飞剪控制系统的上位机程序中,使用通信API编写了串口读写的模块。接收时,程序要查找起始字符‘g’,以确定1帧数据的开始;再根据下一个状态字节判断通信的正确性;后,把长度为23字节的数据帧接收好,并准备接收下一帧。发送过程不用判断数据内容,执行发送函数即可。需要注意的是:由于PLC通信口是半双工的,在PLC向上位机上传数据时,上位机要等1帧数据接收完毕,再执行发送操作,以避免收发冲突。
图3 上位机串口通信流程图
5.结束语
本系统取PC机和PLC各自的特点,实现了对飞剪系统的实时监控。通过利用PLC(下位机 )的自由口通信协议和上位机的VC开发工具,可以方便地开发出PC机和PLC通信应用软件。这种方法节省投资,对小规模的系统极具现实意义。系统具有实时性好、速度快、可靠性高、操作方便等优点,达到了预期的效果。经现场调试及运行表明,该系统适合于飞剪系统的实时监控