1.概述
1.1 S7-1200 的PROFINET 通信口
S7-1200 CPU 本体上集成了一个 PROFINET 通信口,支持以太网和基于 TCP/IP 的通信。使用这个通信口可以实现 S7-1200 CPU 与编程设备的通信,与HMI屏的通信,以及与其它 CPU 之间的通信。这个PROFINET 物理接口是支持10/100Mb/s的 RJ45口,支持电缆交叉自适应,因此一个的或是交叉的以太网线都可以用于这个接口。
1.2 S7-1200支持的协议和大的连接资源
S7-1200 CPU 的PROFINET 通信口支持以下通信协议及服务
? TCP
? ISO on TCP ( RCF 1006 )
? S7 通信 (端)
通信口所支持的大通信连接数
S7-1200 CPU PROFINET 通信口所支持的大通信连接数如下:
? 3个连接用于HMI (屏) 与 CPU 的通信
? 1个连接用于编程设备(PG)与 CPU 的通信
? 8个连接用于Open IE ( TCP, ISO on TCP) 的编程通信,使用T-block 指令来实现
? 3个连接用于S7 通信的端连接,可以实现与S7-200,S7-300以及 S7-400 的以太网S7 通信
S7-1200 CPU可以同时支持以上15个通信连接,这些连接数是固定不变的,不能自定义。
TCP(Transport Connection Protocol)
TCP是由 RFC 793描述的协议,可以在通信对象间建立、的服务连接。如果数据用TCP协议来传输,传输的形式是数据流,没有传输长度及信息帧的起始、结束信息。在以数据流的传输时接收方不知道一 条信息的结束和下一条信息的开始。因此,发送方必须确定信息的结构让接收方能够识别 。在多数情况下TCP应用了IP (Internet protocol) ,也就是“TCP/IP 协议”, 它位于 ISO-OSI 参考模型的*四层。
协议的特点:
? 与硬件绑定的通信协议
? 适合传输中等到大量的数据 (<=8192 bytes)
? 为大多数设备应用提供
– 错误恢复
– 流控制
– 可靠性
? 一个基于连接的协议
? 可以灵活的与支持TCP协议的第三方设备通信
? 具有路由兼容性
? 只可使用静态数据长度
? 有确认机制
? 使用端口号进行应用寻址
? 大多数应用协议,如TELNET、FTP都使用TCP
? 使用 SEND/RECEIVE 编程接口进行数据需要编程来实现
1.3 硬件需求和需求
硬件:
① S7-1200 CPU
② S7-300 CPU + CP343-1(支持S7 Client)
③ PC(带以太网卡)
④ TP以太网电缆
:
① STEP 7 Basic V10.5
② STEP 7 V5.4
2. ISO on TCP 通信
S7-1200 CPU 与S7-300/400 之间通过ISO on TCP 通信,需要在双方都建立连接,连接对象选择“Unspecified”。
所完成的通信任务为:
① S7-1200将DB3里的100个字节发送到S7-300的DB2中
② S7-300将输入数据IB0发送给S7-1200的输出数据区QB0。
2.1 S7-1200 CPU 的组态编程
组态编程与 S7-1200 CPU 之间的通信基本相似 (见 6.3 ),这里简单描述一下步骤:
① 使用STEP 7 Basic V10.5 新建一个项目
在STEP 7 Basic 的“Portal View”中选择 “Create new project”创建一个新项目
② 添加新设备
然后“Project view”,在“Project tree”下双击“Add new device”,在对话框中选择所使用的S7-1200 CPU添加到机架上,命名为 PLC_1。
③ 为 PROFINET 通信口分配以太网地址
在“Device View”中 CPU 上代表PROFINET 通信口的绿色小方块,在下方会出现PROFINET 接口的属性,在 “Ethernet addresses”下分配IP 地址为 192.168.0.1 ,子网掩码为255.255.255.0。
④ 在 S7-1200 CPU 中调用“TSEND_C”通信指令并配置连接参数和块参数
在主程序中调用发送通信指令,“Project tree” > “ PLC_1”>“Program blocks”>“Main”主程序中,从右侧窗口“Instructions”> “Extended Instructions”>“Communications”下调用“TSEND_C”指令,并选择“Single Instance”生成背景 DB块。然后单击指令块下方的“下箭头”,使指令展开显示所有接口参数。
然后,创建并定义发送数据区 DB 块。通过“Project tree”>“ PLC_1”> “Program blocks” >“Add new block” ,选择 “Data block”创建 DB 块,选择寻址,“OK”键,定义发送数据区为 100个字节的数组。
根据所使用的参数创建符号表,如图1所示。
配置连接参数,如图2所示。
配置块接口参数,如图3所示。
图1 创建所使用参数的符号表图PLC tag
图2 配置连接参数
图3 配置 TSEND_C 块参数
⑤ 调用“TRCV”通信指令并配置块参数如图6 47所示。
因为与发送使用的是同一连接,所以使用的是不带连接的发送指令“TRCV”,连接“ID”使用的也是“TSEND_C”中的“Connection ID”号,如图4所示。
图4 配置 T_RCV 块参数
2.2 S7-300 CPU 的ISO on TCP通信的组态编程
① 使用STEP 7 新建一个项目并进行硬件组态
创建完新项目,在项目的窗口下,右键菜单里,选择“Insert New Object”>“SIMATIC 300 Station” ,一个S7-300 站。
为了编程方便,我们使用时钟脉冲通信任务,在CPU的“Properties”>“Cycle/Clock Memory”中设置,如图5所示。
图5 设置时钟脉冲
每一个时钟位都按照不同的周期/在0和1之间切换变化,见表1。
表1:时钟位
位 7 6 5 4 3 2 1 0
周期(S) 2 01. Jun . . . . .
(Hz) 0.5 0.625 1 Jan 25 2 02. Mai 5 10
② 配置以太网模块
“HW Config”中,组态所使用的 CPU 及“CP343-1”模板。并新建以态网 Ethernet (1) ,配置“CP343-1”模板IP 地址为:192.168.0.2,子网掩码为: 255.255.255.0 。如图6所示。配置完硬件组态及属性,编译存盘并下载所有硬件组态。
图6 S7-300 硬件配置
③ 网络组态
打开 “NetPro” 配置网络,选中 CPU,在连接列表里建立新的连接并选择连接对象和通信协议,如图7所示。
图7 创建新的连接并选择 ISO-on-TCP 协议
这时会跳出通用信息,如图8所示。
图8 通用信息
然后,“Addresses”配置通信双方的IP 地址及TSAP 地址,如图9所示。
图9 配置通信的IP 地址及TSAP 地址
配置完连接并编译存盘后,将网络组态下载到CPU300中。
④ 编程
在OB1中,从“Libraries”>“SIMATIC_NET_CP”>“CP300”下,调用FC5(AG_SEND)、FC6(AG_RECV)通信指令。创建接收数据区为 DB2,定义成100个字节的数组。
CALL “ AG_RECV” //调用FC6
ID :=1 // 连接号,要与连接配置列表中一致,见图8
LADDR :=W#16#100 //CP的地址,要与配置中一致,见图8
RECV :=P#DB2.DBX 0.0 BYTE 100 //接收数据区
NDR :=M10.0 //为1时,接收到新数据
ERROR :=M10.1 //为1时,有故障发生
STATUS :=MW12 //状态代码
LEN :=MW14 //接收到的实际数据长度
CALL “AG_SEND” //调用FC5
ACT :=M0.2 //为1时,发送任务
ID :=1 // 连接号,要与连接配置中一致
LADDR :=W#16#100 //CP的地址,要与配置中一致
SEND :=IB0 //发送数据区
LEN :=1 //发送数据的长度
DONE :=M10.2 //为1时,发送完成
ERROR :=M10.3 //为1时,有故障发生
STATUS :=MW16 //状态代码
2.3 监控通信结果
下载S7-1200和S7-300中的所有组态及程序,监控通信结果,如图10、图11所示。
在S7-1200 CPU中向DB3中写入数据:“11”、“22”、“33”,则在S7-300中的DB2块收到数据也为“11”、“22”、“33”。
在S7-300 CPU中,将“2#1111_1111”写入IB0,则在S7-1200 CPU中QB0中收到的数据也为“2#1111_1111”。
图10 S7-1200监控表
图11 S7-300 变量表
3. TCP 通信
使用TCP 协议通信,除了连接参数的定义不同,通信双方的其它组态及编程与前面的ISO on TCP 协议通信完全相同。
S7-1200 CPU中,使用 TCP 协议与S7-300通信时,PLC_1的连接参数,如图12所示。通信伙伴 S7-300 的连接参数,如图13所示。
图12 S7-1200 的TCP连接参数的配置
图13 S7-300 的TCP连接参数的配置
5,【山东】:17地级市——济南、青岛、淄博、枣庄、东营、烟台、潍坊、济宁、泰安、、日照、莱芜、临沂、德州、聊城、菏泽、滨州
28县级市——章丘、胶南、胶州、平度、莱西、即墨、滕州、龙口、莱阳、莱州、招远、蓬莱、栖霞、海阳、青州、诸城、安丘、高密、昌邑、兖州、曲阜、邹城、乳山、文登、荣成、乐陵、临清、禹城
6,【江苏】:13地级市——南京、镇江、常州、无锡、苏州、徐州、连云港、淮安、盐城、扬州、泰州、南通、宿迁
27县级市——江阴市、宜兴市、市、新沂市、金坛市、溧阳市、常熟市、张家港市、太仓市、昆山市、吴江市、如皋市、通州市、海门市、启东市、东台市、大丰市、高邮市、江都市、仪征市、丹阳市、扬中市、句容市、泰兴市、姜堰市、靖江市、兴化市
7,【安徽】:17地级市——合肥、蚌埠、芜湖、淮南、亳州、阜阳、淮北、宿州、滁州、安庆、巢湖、马鞍山、宣城、黄山、池州、铜陵
5县级市——界首、天长、明光、桐城、宁国
8,【浙江】:11地级市——杭州、嘉兴、湖州、宁波、金华、温州、丽水、绍兴、衢州、舟山、台州
22县级市——建德市、富阳市、临安市、余姚市、慈溪市、奉化市、瑞安市、乐清市、海宁市、平湖市、桐乡市、诸暨市、上虞市、嵊州市、兰溪市、义乌市、东阳市、永康市、江山市、临海市、温岭市、龙泉市
9,【福建】:9地级市——福州、厦门、泉州、三明、南平、漳州、莆田、宁德、龙岩
14县级市——福清市、长乐市、永安市、石狮市、晋江市、南安市、龙海市、邵武市、武夷山、建瓯市、建阳市、漳平市、福安市、福鼎市
10,【广东】:21地级市——广州、深圳、汕头、惠州、珠海、揭阳、佛山、河源、阳江、茂名、湛江、梅州、肇庆、韶关、潮州、东莞、中山、清远、江门、、云浮
22县级市——城市、从化市、乐昌市、南雄市、台山市、开平市、鹤山市、恩平市、廉江市、雷州市 吴川市、高州市、化州市、高要市、四会市、兴宁市、陆丰市、阳春市、英德市、连州市、普宁市、市
11,【海南】:2地级市——海口、三亚
6县级市——琼海、文昌、万宁、五指山、儋州、东方
12,【云南】:8地级市——昆明、曲靖、玉溪、保山、昭通、丽江、普洱、临沧
9县级市——安宁市、宣威市、个旧市、开远市、景洪市、楚雄市、大理市、潞西市、瑞丽市
13,【贵州】:4地级市——贵阳、六盘水、遵义、安顺
9县级市——清镇市、赤水市、仁怀市、铜仁市、毕节市、兴义市、凯里市、都匀市、福泉市
14,【四川】:18地级市——成都、绵阳、德阳、广元、自贡、攀枝花、乐山、南充、内江、遂宁、广安、泸州、达州、眉山、宜宾、雅安、资阳
14县级市——都江堰市、彭州市、邛崃市、崇州市、广汉市、什邡市、绵竹市、江油市、峨眉山市、阆中市、华蓥市、万源市、简阳市、西昌市
15,【湖南】:13地级市——长沙、株洲、湘潭、衡阳、岳阳、郴州、永州、邵阳、怀化、常德、益阳、张家界、娄底
16县级市——浏阳市、醴陵市、湘乡市、韶山市、耒阳市、常宁市、武冈市、临湘市、汨罗市、津市市、沅江市、资兴市、洪江市、冷水江市、涟源市、吉首市
16,【湖北】:12地级市——武汉、襄樊、宜昌、黄石、鄂州、随州、荆州、荆门、十堰、孝感、黄冈、咸宁
24县级市——大冶市、丹江口市、洪湖市、石首市、松滋市、宜都市、当阳市、枝江市、老河口市、枣阳市、宜城市、钟祥市、应城市、安陆市、汉川市、麻城市、武穴市、赤壁市、广水市、仙桃市、天门市、潜江市、恩施市、利川市
17,【河南】:17地级市——郑州、洛阳、开封、漯河、安阳、新乡、周口、三门峡、焦作、平顶山、信阳、南阳、鹤壁、濮阳、许昌、商丘、驻马店
21县级市——巩义市、新郑市、新密市、登封市、荥阳市、偃师市、汝州市、舞钢市、林州市、卫辉市、辉县市、沁阳市、孟州市、禹州市、长葛市、义马市、灵宝市、邓州市、永城市、项城市、济源市
18,【山西】:11地级市——太原、大同、忻州、阳泉、长治、晋城、朔州、晋中、运城、临汾、吕梁
11县级市——古交、潞城、高平、介休、永济、河津、原平、侯马、霍州、孝义、汾阳
19,【陕西】:10地级市——西安、咸阳、铜川、延安、宝鸡、渭南、汉中、安康、商洛、榆林
3县级市——兴平市、韩城市、华阴市
20,【甘肃】:12地级市——兰州、天水、平凉、酒泉、嘉峪关、金昌、白银、武威、张掖、庆阳、定西、陇南
4县级市——玉门市、敦煌市、临夏市、合作市
21,【青海】:1地级市——西宁
2县级市——格尔木、德令哈
22,【江西】:11地级市——南昌、九江、赣州、吉安、鹰潭、上饶、萍乡、景德镇、新余、宜春、抚州
参数设置
变频器的设定参数多,每个参数均有一定的选择范围,
使用中常常遇到因个别参数设置不当,导致变频器不能正常工作的现象。
控制方式:即速度控制、转距控制、PID控制或其他方式。采取控制方式后,一般要根据控制精度,需要进行静态或动态辨识。
较低运行频率:即电机运行的较小转速,电机在低转速下运行时,其散热性能很差,电机长时间运行在低转速下,会导致电机烧毁。而且低速时,其电缆中的电流也会增大,也会导致电缆发热。
较高运行频率:一般的变频器较大频率到60Hz,有的甚至到400 Hz,高频率将使电机高速运转,这对普通电机来说,其轴承不能长时间的**额定转速运行,电机的转子是否能承受这样的离心力。
载波频率:载波频率设置的越高其高次谐波分量越大,这和电缆的长度,电机发热,电缆发热变频器发热等因素是密切相关的。
电机参数:变频器在参数中设定电机的功率、电流、电压、转速、较大频率,这些参数可以从电机铭牌中直接得到。
跳频:在某个频率点上,有可能会发生共振现象,特别在整个装置比较高时;在控制压缩机时,要避免压缩机的喘振点。
控制参数
变频器日常使用中出现的一些问题,很多情况下都是因为变频器参数设置不当引起的。西门子变频器可设置的参数有几千个,只有系统地、合适地、准确地设置参数才能充分利用变频器性能。[1]
变频器控制方式的选择由负荷的力矩特性所决定,电动机的机械负载转矩特性根据下列关系式决定:
p= t n/ 9550
式中:p——电动机功率(kw)
t——转矩(n. m)
n——转速(r/ min)
转矩t与转速n的关系根据负载种类大体可分为3种[2]。
(1)即使速度变化转矩也不大变化的恒转矩负载,此类负载如传送带、起重机、挤压机、压缩机等。
(2)随着转速的降低,转矩按转速的平方减小的负载。此类负载如风机、各种液体泵等。
(3)转速越高,转矩越小的恒功率负载。此类负载如轧机、机床主轴、卷取机等。
变频器提供的控制方式有v/f控制、矢量控制、力矩控制。v/f控制中有线性v/f控制、抛物线特性v/f控制。将变频器参数p1300设为0,变频器工作于线性
v/f控制方式,将使调速时的磁通与励磁电流基本不变。适用于工作转速不在低频段的一般恒转矩调速对象。
将p1300设为2,变频器工作于抛物线特性v/f控制方式,这种方式适用于风机、水泵类负载。这类负载的轴功率n近似地与转速n的3次方成正比。其转矩m近似地与转速n的平方成正比。对于这种负载,如果变频器的v/f特性是线性关系,则低速时电机的许用转矩远大于负载转矩,从而造成功率因数和效率的严重下降。为了适应这种负载的需要,使电压随着输出频率的减小以平方关系减小,从而减小电机的磁通和励磁电流,使功率因数保持在适当的范围内。
可以进一步通过设置参数使v/f控制曲线适合负载特性。将p1312在0至250之间设置合适的值,具有起动提升功能。将低频时的输出电压相对于线性的v/f曲线作适当的提高以补偿在低频时定子电阻引起的压降导致电机转矩减小的问题。适用于大起动转矩的调速对象。
变频器v/f控制方式驱动电机时,在某些频率段,电机的电流、转速会发生振荡,严重时系统无法运行,甚至在加速过程中出现过电流保护,使得电机不能正常启动,在电机轻载或转矩惯量较小时更为严重。可以根据系统出现振荡的频率点,在v/f曲线上设置跳转点及跳转频带宽度,当电机加速时可以自动跳过这些频率段,保证系统能够正常运行。从p1091至p1094可以设定4个不同的跳转点,设置p1101确定跳转频带宽度。
有些负载在特定的频率下需要电机提供特定的转矩,用可编程的v/f控制对应设置变频器参数即可得到所需控制曲线。设置p1320、p1322、p1324确定可编程的v/f特性频率座标,对应的p1321、p1323、p1325为可编程的v/f 特性电压座标。
参数p1300设置为20,变频器工作于矢量控制。这种控制相对完善,调速范围宽,低速范围起动力矩高,精度高达0.01%,响应很快,高精度调速都采用svpwm矢量控制方式。
参数p1300设置为22,变频器工作于矢量转矩控制。这种控制方式是目前国际上较先进的控制方式,其他方式是模拟直流电动机的参数,进行保角变换而进行调节控制的,矢量转矩控制是直接取交流电动机参数进行控制,控制简单,精确度高。
1 单方向正转ON/OFF2功能设置
1.1 硬件接线:
这里使用DI0端子为例,将MM4的DI0端子作为变频器的斜坡启动信号,DC24V接通后按照P1120斜坡上升时间启动;同时DI0端子也作为自由停车信号 取代OFF1斜坡停车,DC24V断开后执行OFF2停车命令,变频器封锁逆变桥,电机惯性自由停车。如图01所示:
single
图01.单方向正传硬件接线
1.2 参数设置:
参数号 参数值 注释
P701 99 使能BICO参数互联
P840 r052.4 OFF2 (停车2)命令激活*给正转ON/OFF1
P844 r722.0 DI0*给OFF2源
2 单方向反转ON/OFF2功能设置
2.1 硬件接线:
某些现场不希望改变硬件接线实现单方向反转ON/OFF2功能,这里同样使用DI0端子为例,将MM4的DI0端子作为变频器的反向斜坡启动信号,DC24V接通后按照P1120斜坡上升时间启动;同时DI0端子也作为自由停车信号 取代OFF1斜坡停车,DC24V断开后执行OFF2停车命令,变频器封锁逆变桥,电机惯性自由停车。如图02所示:
singleRE西门子6SE6440-2UD31-5DB1
图02.单方向反转硬件接线
2.2参数设置:
参数号 参数值 注释
P701 99 使能BICO参数互联
P842 r052.4 OFF2 (停车2)命令激活*给反转ON/OFF1
P844 r722.0 DI0*给OFF2源
注:如果出现P842出现修改不了的情况,确认是否有其他的DI点功能设置为反转,检查P701到P708参数。
3 正反转的ON/OFF2功能设置
3.1硬件接线:
DI0作为变频器的正转端子,DI1作为变频器的反转端子,启动硬件接线如03图所示:
double
图03.双方向硬件接线
3.2参数设置:
参数号 参数值 注释
P701 99 使能BICO参数互联
P702 99 使能BICO参数互联
P2800 1 激活自由功能块功能
P2801[6] 1 激活XOR1功能
P2822[0] r722.0 DI0关联到XOR1的输入1
P2822[1] r722.1 DI1关联到XOR1的输入2
P844 r2823 XOR1的输出关联到OFF2 (停车2)
P840 r052.4 OFF2 (停车2)命令激活*给ON/OFF1
P1113 r722.1 DI1关联到反向
3.3自由功能块逻辑关系:
FBB
图04.自由功能块逻辑
注:
当变频器启动前需要首先到达一个变频器准备好的状态,所以需要提前给OFF2使能,再通过OFF2的状态激活ON命令才能实现ON/OFF2的功能。SINAMICS变频器这种方法同样适用。