北京西门子电源授权一级供应商
北京西门子电源授权一级供应商
S7-300CP后接CP340(RS232串口)或CP341(RS232串口),再通过串口直连线连接CP340或CP341到MD720-3的串口上,MD720-3插一块SIM卡。直连线的1针到9针对应连接。
需要的软件及硬件
硬件
Component Qty. MLFB / Order number Note
PS307 5 A 1 6ES7307-1EA00-0AA0
CPU317-2PN/DP 1 6ES7317-2EJ10-0AB0
CP341 1 6ES7341-1AH01-0AE0
MD720-3 1 6NH9720-3AA00
直连线 1 6ES7901-3CB30-0XA0
SIM card
硬件列表
Component No. MLFB / Order number Note
STEP 7 5.4 SP4 1 6ES7810-4CC08-0YA5
4、以TEXT的方式发送SMS
在这里不介绍用自由口编程的方式编写AT的指令来发送SMS,而是采用西门子提供库功能块来编写程序。库程序的下载链接地址如下:26100569
上面库程序是压缩文件,先解压缩到一个目录下,在该目录下又会看到3个压缩文件,再解压这三个压缩文件,解压缩后如下图所示:
存放目录
从上图中,解压三个压缩文件后Sms_bloc;SMS_MD720_Application;Sms_MD720_Simple
Sms_bloc: 包括了使用CP340、CP341、CP442-1收发短信的库功能。
Sms_MD720_Application:包含了用CP341和CP442-1收发短信的应用程序。
Sms_MD720_Simple:包含了一个用Cp341收发短信的简单应用程序
由于三个文件夹的程序只有Sms_MD720_Simple的程序是完整的,两个文件夹下的程序由于编者的疏忽,程序不完整,导致无法正常编译通过。在本文里我们只能介绍,通过拷贝Sms_MD720_Simple项目下的功能块到实际的项目中来实现发送短信的功能。
在新建项目前,需要硬件按照网络图安装好,并加电。MD720加电后恢复出厂设置,让其工作在终端模式下(在MD720的系统手册上介绍如何恢复出厂设置,这里不再作详细介绍),恢复后用串口直连线,连接MD720与计算机的串口,打开计算机的超级终端程序,打开方式如下图:
打开超级终端
打开后在连接描述的窗口里输入一个连接名如下图:
输入连接名
点击OK后,选择与计算机连接的串口,这里连接的是串口1,设置如下图:
选择COM端口
在上图点击OK按钮后,设置串口的通讯参数如下:
COM口的参数设置
点击OK按钮后,在出现的串口里先输入“+++”后,输入“AT”检查与Modem的连接是否正常,若正常则Modem会返回OK,
测试与Modem的连接
在输入指令“AT+IRP=9600”修改通讯波特率为9600。
设置Modem的波特率
修改成功后,把连接计算机上的串口拔下后,把9针口连接到CP341的串口上。
打开Step7Manger,打开后点击File菜单下的New…,新建一个项目,在新建项目的串口里输入项目SMS_CP341,点击新建,项目的硬件组态如下图所示:
S7-300站的硬件组态
双击CP341-RS232C,打开属性窗口。
在发送功能块的背景数据块中设置PIN码、目的手机号及信息
修改后保存DB100,并下载所有的程序块到CPU中。下载后打开打开变量监控表并在线监控,如下图:
(1)如果信号电缆和电源电缆之间的间距小于15cm时,必须在信号电缆和电源电缆之间设置屏蔽用的金属隔板,并将隔板接地。
(2)当信号电缆和电源电缆垂直方向或水平方向分离安装时,信号电缆和电源电缆之间的间距应大于15cm.
注意:对于某些干扰特别大的应用场合,如电源电缆上挂接电压为220VAC,电流在10A以上感性负载,电源电缆不带屏蔽层时,那么要求它与信号电缆的垂直方向间隔距离必须在60cm以上。
一、使用西门子安全PLC或者博途的KNOWHOW功能
西门子安全PLC作为西门子主打安全功能的一款产品,它的性能毋庸置疑,安全PLC的程序块加密后无法破解;可以很好的保护核心。而博途PLC作为西门子的***新产品,其版权保护也是它的主要功能之一,KNOWHOW功能是软硬件双重加密,不加密的块可以正常监控,没有密码的话甚至无法下载到其他PLC;使用博途的KNOWHOW功能既可以将程序交给甲方方便维护,又可以保护自己的核心程序不被窃取。
二、采用高 级语言编写部分重要的工艺程序
西门子除了***基础的LAD梯形图编程,FBD功能块编程和STL语句表编程还有很多其他的方式,比如说PCS7的CFC,SFC;还有SCL,S7-GRAPH等等。对于这些语言,一般的工控人员很难全部精通,仿制难度大大提升,非常关键的工艺程序可以由这些语言编写,也可以很好的保护自己的核心。建议用户应该尽量采用层次的编程方式,这样编出来的程序中嵌入系统的保护加密程序,才不容易被发现而仿制。
(1)编程方式的采用
a)采用模块化的程序结构,采用符号名,参数化来编写子程序块
b)尽量采用背景数据块和多重背景的数据传递方式
c)多采用间接寻址的编程方式
d)复杂系统的控制程序尤其是一些带有顺序控制或配方控制的程序,可以考虑采用数据编程的方式,即通过数据的变化来改变系统的控制逻辑或控制顺序。
(2)主动保护方法
a)利用系统的时钟
b)利用程序卡或者CPU的ID号和序列号
c)利用EEPROM的反写入功能,及一些需要设置的内存保持功能 d)利用系统提供的累时器功能
e)在用户程序的数据块中设置密码
f)软件上设置逻辑陷阱
g)可以反向利用自己在编程时犯的错误
(3)被动保护方法
a)在内存容量利用许可的条件下,不要删除被认为是无用的程序
b)在数据块里留下开发者的标识,以便于将来遭到侵权时可以取证
(4)应用反窃取技术的注意事项
a)在用户程序中嵌入保护程序要显得自然一些,不能很突兀的加出一段程序来,代码要尽量精简,变量符号名应与被嵌入程序段的变量保持一致
b)往往一种保护加密手段是不够的,应该多种方法并用,并且这些保护程序一旦激活后对系统造成的后果也应该尽量不同,造成所谓的“地雷效应”,从而增加程序被窃取的难度,时间与成本,短时间内让抄袭者束手无策,
c)保护好程序的原代码,如果需要交付程序的,在不影响用户对设备维护的前提下,应对交付的程序做适当的技术处理,如删除部分符号名,采用上载的程序或数据块
d)做好严格的测试,以避免保护程序的不完善引起的误动作而带来的不必要的麻烦,也能降低售后服务的的费用。