西门子模块6ES7223-1BM22-0XA8接线方法
1.如何选择需要感染的PLC。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
Stuxnet会根据目标系统的特点,使用不同的代码来感染PLC。一个感染的序列包括了许多PLC模块(代码模块和数据模块),用以注入PLC来改 变目标PLC的行为。这个威胁包括了三个感染序列。其中两个非常相似,功能也相同,我们将其命名为序列A和B。*三个序列我们命名为序列C。 Stuxnet 通过验证“指纹”来判断系统是否为计划攻击的目标。它会检查:PLC种类/家族:只有CPU6ES7-417和6ES7-315-2 会被感染。系统数据模块:SDB会被解析;根据他们包含的数据,感染进程会选择A,B或其它感染方式开始行动。当解析SDB时,代码会搜索这两个值是否存 在--7050hand9500h;然后根据这两个数值的出现次数,选择序列A或B中的一种来感染PLC。代码还会在SDB模块的50h子集中搜索字节序 2CCB0001,这个字节序反映了通信处理器CP342-5(用作Profibus-DP)是否存在。而选择序列C进行感染的条件则由其他因素构成。
2.感染方法。
Stuxnet使用“代码插入”的感染方式。当Stuxnet感染OB1时,它会执行以下行为:增加原始模块的大小;在模块开头写入代码;在 代码后插入原始的OB1代码。Stuxnet也会用类似于感染OB1的方式感染OB35。它会用自身来取代标准的协同处理器DP_RECV代码块,然后在 Profibus(一个标准的用作分布式I/O的工业网络总线)中挂钩网络通信。利用A/B方法的感染步骤如下:检查PLC类型;该类型必须为S7 /315-2;检查SDB模块,判断应该写入序列A或B中的哪一个;找到DP_RECV,将其复制到FC1869,并用Stuxnet嵌入的一个拷贝 将其取代;在序列中写入模块(总共20个),由Stuxnet嵌入;感染OB1,令代码可以在新的周期开始时执行;感染OB35,它将扮演“看门 狗”的角色。
3.感染代码。
被注入OB1功能的代码是用来感染序列A和B的。这些序列包含了以下模块:代码块:FC1865至FC1874,FC1876至FC1880(注 意:FC1869并非Stuxnet的一部分,而是PLC的DP_RECV模块的一个拷贝);数据模块:DB888至DB891。序列A和B用 DP_RECV挂钩模块来拦截Profibus中的数据包,并根据在这些模块中找到的数值,来构造其他的数据包并发送出去。这由一个复杂的状态机控制(状 态机被建立在上面提到的FC模块中)。这个状态机可部分受控于数据块DB890中的DLL。在某些条件下,序列C会被写入一个PLC。这个序列比A和B包 含更多的模块:FC6055至FC6084;DB8062,DB8063;DB8061,DB8064至DB8070(在运行中产生)。序列C主要为了将 I/O信息读写入PLC的内存文件映射的I/O区域,以及外围设备的I/O。程序A/B的控制流如下图所示,在之前的Step7编辑器的截图中也有部分显 示(数据模块FC1873)
4.RootkitStuxnetPLCrootkit代码全部藏身于的s7otbxdx.dll中。
为了不被PLC所检测到,它至少需要应付以下情况:对自己的数据模块的读请求;对受感染模块(OB1,OB35,DP_RECV)的读请求;可能 覆盖Stuxnet自身代码的写请求。Stuxnet包含了监测和拦截这些请求的代码,它会修改这些请求以保Stuxnet的PLC代码不会被发现或被 破坏。下面列出了几个Stuxnet用被挂钩的导出命令来应付这些情况的例子:s7blk_read:监测读请求,而后Stuxnet会返回:真实请求的 DP_RECV(保存为FV1869);错误信息,如果读请求会涉及到它的模块;OB1或OB35的干净版本的拷贝s7blk_write:监测关于 OB1/OB35的写请求,以保他们的新版本也会被感染。s7blk_findfirst/s7blk_findnext:这些例程被用于枚举PLC中 的模块。模块会被自动跳过。s7blk_delete:监测对模块的“删除”操作。如上文所述,Stuxnet是一个非常复杂的威胁,而其中的PLC 感染代码令问题更加难以解决。
在现场进行系统安装前,需要考虑安装环境是否满足PLC的使用环境要求,这一点可以参考各类产品的使用手册。但无论什么PLC,不都能装设在下列场所:含有腐蚀性气体之场所,阳光直接照射到的地方,温度上下值在短时间内变化急遽的地方,油、水、化学物质容易侵入的地方,有大量灰尘的地方,振动大且会造成安装件移位的地方。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
如果必须要在上面的环境使用,则要为PLC制作合适的控制箱,采用规范和必要的防护措施。如果需要在野外较低温度下使用,可以使用有加热功能的控制箱。如何做这些防护箱或控制箱,各制造商和和资格的系统集成商将会为客户提供相应的供应和设计。
在使用控制箱时,在控制箱内OpenPLC安装的位置要注意如下事项:控制箱内空气流通是否顺畅(各装置间须保持适当的距离),变压器、马达控制器、变频器等是否与PLC保持适当距离,动力线与信号控制线是否分离配置,组件装设之位置是否利于日后之检修,是否需预留空间,供日后系统扩充使用。
除了上述注意事项之外,还有其它注意事项要留意:
首先比较重要的是静电的隔离。静电是无形的,但可能因为不会对人造成生命危险,所以许多人常常忽视它。在中国的北方、干燥的场所,人体身上的静电都是造成静电损坏电子组件的因素。虽然你被静电打到的话,只不过是轻微的酥麻,但这对PLC和其它任何电子器件就足以致命了。
要避免静电的冲击有下列三种方式:在进行维修或更换组件时,请先碰触接地的金属,以去除身上的静电;不要碰触电路板上的接头或是IC接脚;电子组件不使用时,请用有隔离静电的包装物,将组件放置在里面。想象PLC里的元器件是一个娇嫩的婴儿,而那些静电会导致这个婴儿死亡,你就会更容易以正确的态度对待这个问题了。
基座安装(RACK)时
在决定控制箱内各种控制组件及线槽位置后,要依照图纸所示尺寸,标定孔位,钻孔后将固定螺丝旋紧到基座牢固为止。在装上电源供应模块前,必须同时注意电源线上的接地端有无与金属机壳连结,若无则须接上。接地不好的话,会导致一系列的问题,静电、浪涌、外干扰,等等。由于不接地,往往PLC也能够工作,因此,不少经验不足的工程师就误以为接地不那么重要了。这就像登山的时候,没有系上保护缆绳一样,虽然你正常前进的时候,保护缆绳没有任何作用,但一旦你失足的时候,没有那根绳子,你的生命就完结了。PLC的接地,就相当于给PLC系上保护缆绳。
在I/O模块安装时,须注意如下事项:I/O模块插入机架上的槽位前,要先确认模块是否为自己所预先设计的模块;I/O模块在插入机架上的导槽时,务必插到底,以确保各接触点是紧密结合的;模块固定螺丝务必锁紧;接线端子排插入后,其上下螺丝必须旋紧。由于现场的变压器、电机等影响,多少会有振动,如果这些螺丝钉松动了,会导致模块从机架中松开



模拟量的转换:PLC中常用的模拟量有 -10—10V、0—10V、0—20mA、4—20mA,我们要对这些数据进行处理处理,首先要找到其在plc中所对用的通道号,在读取这些通道的数据时,会发现模拟量对用的数据是一个数字量,数字量的取值范围根据plc的不同,所对应的数值也不同:
-10V—10V的电压时,在6000分辨率时被转换为F448—0BB8Hex(-3000—3000);12000分辨率时被转换为E890—1770Hex(-6000—6000)。
0—10V的电压时,在6000分辨率时被转换为0—1770Hex(0—6000);12000分辨率时被转换为0—2EE0Hex(0—12000)。
0—20mA的电流时,在6000分辨率时被转换为0—1770Hex(0—6000);12000分辨率时被转换为0—2EE0Hex(0—12000)。
4—20mA的电流时,在6000分辨率时被转换为0—1770Hex(0—6000);12000分辨率时被转换为0—2EE0Hex(0—12000)。
以上仅做简单的介绍,不同的PLC有不同的分辨率,并且您所测量物理量实现的量程不一样。计算结果可能有一定的差异
然后就可以对这些数值进行转换,比如:模拟量输入信号为4--20ma,其中plc中对应的数字量为0---27648,对应的通道为PW256;那么当pw256中的值为27648是那么实际对应的模拟量输入电流为20ma,而我们接的是一个超声波液位计,4ma一个为0m;20ma对应为10m;那么这个时候当前的液位应该是10m的位置。当然这就需要我们在plc中做一个简单的算法把这些数值对应起来。
(一)分析被控对象并提出控制要求 详细分析被控对象的工艺过程及工作特点,了解被控对象机、电、液之间的配合,提出被控对象对PLC控制系统的控制要求,确定控制方案,拟定设计任务书。
(二)确定输入/输出设备
根据系统的控制要求,确定系统所需的全部输入设备(如:按纽、位置开关、转换开关及各种传感器等)和输出设备(如:接触器、电磁阀、信号指示灯及其它执行器等),从而确定与PLC有关的输入/输出设备,以确定PLC的I/O点数。
(三)选择PLC
PLC选择包括对PLC的机型、容量、I/O模块、电源等的选择,详见本章*二节。
(四)分配I/O点并设计PLC外围硬件线路
1.分配I/O点
画出PLC的I/O点与输入/输出设备的连接图或对应关系表,该部分也可在第2步中进行。
2.设计PLC外围硬件线路
画出系统其它部分的电气线路图,包括主电路和未进入PLC的控制电路等。
由PLC的I/O连接图和PLC外围电气线路图组成系统的电气原理图。到此为止系统的硬件电气线路已经确定。
(五)程序设计
1.程序设计
根据系统的控制要求,采用合适的设计方法来设计PLC程序。程序要以满足系统控制要求为主线,逐一编写实现各控制功能或各子任务的程序,逐步完善系统*的功能。除此之外,程序通常还应包括以下内容:
A.初始化程序。在PLC上电后,一般都要做一些初始化的操作,为启动作必要的准备,避免系统发生误动作。初始化程序的主要内容有:对某些数据区、计数器等进行清零,对某些数据区所需数据进行恢复,对某些继电器进行置位或复位,对某些初始状态进行显示等等。
B.检测、故障诊断和显示等程序。这些程序相对独立,一般在程序设计基本完成时再添加。
C.保护和连锁程序。保护和连锁是程序中不可缺少的部分,必须认真加以考虑。它可以避免由于非法操作而引起的控制逻辑混乱,。
2.程序模拟调试
程序模拟调试的基本思想是,以方便的形式模拟产生现场实际状态,为程序的运行创造必要的环境条件。根据产生现场信号的方式不同,模拟调试有硬件模拟法和软件模拟法两种形式。
A.硬件模拟法是使用一些硬件设备(如用另一台PLC或一些输入器件等)模拟产生现场的信号,并将这些信号以硬接线的方式连到PLC系统的输入端,其时效性较强。
B.软件模拟法是在PLC中另外编写一套模拟程序,模拟提供现场信号,其简单易行,但时效性不易保证。模拟调试过程中,可采用分段调试的方法,并利用编程器的监控功能。
(六)硬件实施
硬件实施方面主要是进行控制柜(台)等硬件的设计及现场施工。主要内容有:
A.设计控制柜和操作台等部分的电器布置图及安装接线图。
B.设计系统各部分之间的电气互连图。
C.根据施工图纸进行现场接线,并进行详细检查。
由于程序设计与硬件实施可同时进行,因此PLC控制系统的设计周期可大大缩短。
(七)联机调试
联机调试是将通过模拟调试的程序进一步进行在线统调。联机调试过程应循序渐进,从PLC只连接输入设备、再连接输出设备、再接上实际负载等逐步进行调试。如不符合要求,则对硬件和程序作调整。通常只需修改部份程序即可。
全部调试完毕后,交付试运行。经过一段时间运行,如果工作正常、程序不需要修改,应将程序固化到EPROM中,以防程序丢失。
(八)整理和编写技术文件
技术文件包括设计说明书、硬件原理图、安装接线图、电气元件明细表、PLC程序以及使用说明书等.
PLC数字量就是我们手动按的按钮来控制什么东西,这样方式传入给plc就是数字量。当向长度测量啊、温度测量啊、压力测量啊好多不能用人手直接控制,以其它方式来采取数值的方式,在给PLC的,我们把这样方式就叫模拟量控制。就想电脑的网络一样。要在数控系统中编程的话,它应该有向电脑一样的显示器或编程器,让我们手动来编程和修改程序,如果没有的话,说明你们只能用它们已经编好的程序,这样呢,就是说已经有人把程序传入到PLC中了(PLC是一个实物在机器里面,你应该能看的到)但像你们数据,应该是自己编程来输入你们想要的数据,我想你们是可以自己编程的,你好好找找。
1、数字量
在时间上和数量上都是离散的物理量称为数字量。把表示数字量的信号叫数字信号。把工作在数字信号下的电子电路叫数字电路。
例如:用电子电路记录从自动生产线上输出的零件数目时,每送出一个零件便给电子电路一个信号,使之记1,而平时没有零件送出时加给电子电路的信号是0,所在为记数。可见,零件数目这个信号无论在时间上还是在数量上都是不连续的,因此他是一个数字信号。较小的数量单位就是1个。
2、模拟量
在时间上或数值上都是连续的物理量称为模拟量。把表示模拟量的信号叫模拟信号。把工作在模拟信号下的电子电路叫模拟电路。
例如:热电偶在工作时输出的电压信号就属于模拟信号,因为在任何情况下被测温度都不可能发生突跳,所以测得的电压信号无论在时间上还是在数量上都是连续的。而且,这个电压信号在连续变化过程中的任何一个取值都是具体的物理意义,即表示一个相应的温度
目前市场上经常出现继电器问题的客户现场有一个共同的特点就是:出现故障的输出点动作频率比较快,驱动的负载都是继电器、电磁阀或接触器等感性负载而且没有吸收保护电路。因此建议在PLC输出类型选择和使用时应注意以下几点:
1.一定要关注负载容量。
输出端口须遵守允许较大电流限制,以保输出端口的发热限制在允许范围。继电器的使用寿命与负载容量有关,当负载容量增加时,触点寿命将大大降低,因此要特别关注。
2.一定要关注负载性质,
感性负载在开合瞬间会产生瞬间高压,因此表面上看负载容量可能并不大,但是实际上负载容量很大,继电器的寿命将大大缩短,因此当驱动感性负载时应在负载两端接入吸收保护电路。尤其在工作频率比较高时务必增加保护电路。从客户的使用情况来看,增加吸收保护电路后的改善效果十分明显。
根据电容的特性,如果直接驱动电容负载,在导通瞬间将产生冲击浪涌电流,因此原则上输出端口不宜接入容性负载,若有必要,需保证其冲击浪涌电流小于规格说明中的较大电流。
3.一定要关注动作频率。
当动作频率较高时,建议选择晶体管输出类型,如果同时还要驱动大电流则可以使用晶体管输出驱动中间继电器的模式。当控制步进电机/伺服系统,或者用到高速输出/PWM波,或者用于动作频的节点等场合,只能选用晶体管型PLC
对扩展模块与主模块的输出类型并不要求一致,因此当系统点数较多而功能各异时,可以考虑继电器输出的主模块扩展晶体管输出或晶体管输出主模块扩展继电器输出以达到较佳配合。
http://zhangqueena.b2b168.com
欢迎来到浔之漫智控技术(上海)有限公司网站, 具体地址是上海市松江区永丰街道上海市松江区广富林路4855弄52号3楼,联系人是聂航。
主要经营电气相关产品。
单位注册资金单位注册资金人民币 100 万元以下。
价格战,是很多行业都有过的恶性竞争,不少厂家为了在价格战役中获胜,不惜以牺牲产品质量为代价,而我们公司坚决杜绝价格战,坚持用优质的原材料及先进的技术确保产品质量,确保消费者的合法利益。