西门子模块6GK7243-1GX00-0XE0技术数据
1 引言
可编程序控制器(Programmable Logic Controller)简称为PLC,它具有可靠性高、抗干扰能力强等突出优点,因而广泛应用于工业控制领域,已经成为现代工业自动化的主要支柱之一。在PLC控制系统的设计中,经常会遇到I/O点资源紧张以及性价比矛盾的问题。有些被控设备需要具有手动、自动的工作方式,且手动部分控制按钮较多;有些自动生产线中,进行位置检测的行程开关或者用于系统工作状态指示的输出比较多,都会使占用的I/O点大为增加。一般通过增加扩展模块来解决,但PLC的I/O点价格昂贵,且还有扩展模块数目和I/O点数目的限制,如SIEMENS的CPU 226大扩展模块数目为7,大扩展168路数字量I/O点或35路模拟量I/O点。若此时再增加CPU,势必使得系统性价比大为降低,在这种情况下,扩展I/O点数具有较大的实际意义。本文以SIEMENS的S7-200 PLC为例,探讨如何扩展PLC控制系统中I/O点数的方法。
2 硬件电路I/O点扩展方法
2.1 分时分组输入
对于既有手动方式又有自动方式,而二者不可能同时执行的PLC工作方式,不同工作方式的输入可以共用一个PLC的输入点。分时分组输入扩展I/O点数接线图如图l所示。I1.0用来输入自动/手动命令信号,供自动和手动程序切换用;二极管用来切断寄生电路,避免错误信号的产生;SA用来切换自动和手动操作方式。
图1 分时分组输入接线图
2.2 共用输出触点
对于通断状态完全相同的负载,在输出点功率允许的情况下,可以并联于同一输出点上,即用一个输出点带动多个负载,需特别注意的是不能超出每个输出点的允许负载能力。接线方式如图2所示。
图2 共用输出点接线图
2.3 合并输入触点
对于一个由如图3所示的按钮和接触器实现的电动机多点起动、停止的控制要求,例如可在三处实现启动和停止,其中,SB1、SB2、SB3为起动按钮,SB11、SB12、SB13为停止按钮。可以将每个按钮接PLC的一个输入点,很容易便可实现。若PLC的输入点较为紧张,则可以用图4所示的方式接线,与每个按钮占用一个输入点的方式相比,该方法的软件编程更为简单。
图3 电动机电气控制原理图
图4 电动机PLC控制接线图
3 软件编程I/O点扩展方法
软件扩展的基本思想是一点两用或轮序复用。即当按钮初次按下时,输出要求为高;当按钮再次按下时,输出要求为低;再按下时又为高,依此类推。这样就可以节省一个输入点,当系统有较多开关量控制时可节省较多输入点,如主机ON和主机OFF,纸料座上和纸料座下,都可以只用一个输入点来控制。实现“一点两用”的编程方法较多,如利用内部辅助继电器、定时器、计数器、移位指令等,本文仅介绍几种简便方法。
3.1 利用边沿检测、输出指令
若按钮SB连到I0.0上,输出控制Q0.0,利用边沿检测和输出指令实现“一点两用”,用STEP7 V5.3编制的STL程序如下。
A I0.0
FP M0.0
= M0.1
A M0.1
A Q0.0
= M0.2
A(
O M0.1
O Q0.0
)
AN M0.2
= Q0.0
程序说明:当第1次按下按钮SB时,I0.0的常开触点闭合,在RLO边沿检测指令FP的作用下,辅助继电器M0.1接通一个扫描周期,从而输出继电器Q0.0的线圈得电,且Q0.0构成自锁(保持)电路,同时Q0.0另一对常开触点闭合,为M0.2接通做准备;当第2次按下按钮SB时,在FP指令的作用下,M0.1的常开触点接通M0.2的线圈回路,M0.2的常闭触点切断了PLC的输出,从而实现一点两用。
3.2 利用边沿检测、跳转指令
若利用边沿检测和跳转指令,实现起来较为简便,其STL程序如下。
A I0.0
FP M0.0
JNB OUT
AN Q0.0
= Q0.0
OUT: NOP0
程序说明:第4、5个语句的功能是实现Q0.0的自取反,但若没有前面的跳转指令,则程序每个扫描周期都会将Q0.0的状态取反一次;第1、2句的作用是限定只有当I0.0的上升沿到时取反一次,否则跳出取反程序段,从而实现一点两用。
3.3 利用边沿检测、异或指令
若利用边沿检测和异或指令实现起来更为简便,程序如下。
A I 0.0
FP M0.0
X Q0.0
= Q0.0
程序说明:当第1次检测到I0.0的上升沿,此时Q0.0为0,所以异或后输出Q0.0为1,第2个扫描周期来时,已经不是I0.0的上升沿了,因此为0,然而此时Q0.0确为1,所以异或后保持结果仍为1;第2次检测到上升沿时,Q0.0为1,异或后输出Q0.0的结果为0,等到下一个扫描周期到时,已经不是上升沿了,而此时Q0.0还是为0,因此异或保持输出仍为0。
4 硬件和软件结合I/O点扩展方法
4.1 硬件编码和软件译码,扩展输入点
在控制系统输入信号较多的情况下,可以利用编码器对输入信号编码,然后引到PLC的输入端,再通过PLC内部程序配合进行译码,对各个输入信号加以识别,可以大大减少对输入点的占用。PLC的外部接线如图5所示。由于普通编码器在有多个信号同时输入时会出现乱码,故可采用8线-3线优先编码器74LS148,设定好信号的优先权,有时还要将编码器的选通输出端和扩展端也接入PLC中,配合程序减少误判断。另外,还要注意的是电平的匹配问题(信号电路的+5V和PLC的+24V之间)以及PLC的输入口对信号识别所要求的技术规范(驱动电流和电压能识别的范围),有时还需增加适当的信号放大和隔离电路。
图5 硬件编码接线图
下面以按钮SB2按下为例,说明PLC内部软件译码的程序识别方法。由74LS148的功能表可知,该芯片低电平有效,因此图5中用3个非门将输出电平转换成正逻辑。若SB2按下,无论SB0和SB1是否按下,但SB3~SB7均未按下;此时,ABC的输出为101,经过非门后I0.0,I0.1,I0.2的状态分别为0,1,0;对应的STL译码程序如下。
LDN I0.0
A I0.1
AN I0.2
= M0.2
这样,笔者在程序里用M0.2的常开触点代替了按钮SB2。即当按钮SB2按下,M0.2为1;SB2弹起,M0.2又为0,从而实现了软件译码的功能。另外需要指出,该方法在PLC的每一个扫描周期只能读入8个输入中的一个输入状态,若有2个以上开关闭合,PLC只能检测出优先权高的那个信号。
4.2 软件编码和硬件译码,扩展输出点
在控制系统输出信号较多的情况下,可以通过PLC的内部程序对输出信号进行编码,然后通过硬件译码器进行译码,驱动负载工作,这可以大大的减少对输出点的占用。PLC的外部接线如图6所示,采用3线-8线译码器74LS138。此时,同样存在电平匹配的问题,即PLC的直流模块典型输出为+24V,而信号电路的工作电压一般为+5V,因此,有时同样需要增加信号电路以及功率放大电路以驱动负载工作。
图6 PLC接线图
下面以如何让Q2为1为例,说明PLC内部软件的编码方法。由74LS138的功能表可知,若要使输出Q2为1,应该使Y2输出为0;即对应的ABC应该为010,从而得到只要让PLC的Q0.0,Q0.1,Q0.2分别为0,1,0即可;对应的STL编码程序如下,其中M1.2为置位输出Q2的条件。
LD M1.2
S Q0.0, 1
R Q0.1, 1
S Q0.2, 1
这样,只需对Q0.0,Q0.1,Q0.2进行组合就可以实现对输出Q0~Q7分别置为1。本方法存在一个明显的缺点,即每一个扫描周期只能输出八种状态中的一种,若要同时置位输出Q0和Q1是不能实现的。
4.3 用N个输入点识别N×(N+1)/2个输入信号
若我们将输入信号接成图7的形式,再配合以软件编程便可以实现用3个输入点识别3×(3+1)/2=6个输入信号。其基本思想是:当SB1按下时,PLC只检测到了I0.0为“1”,此时I0.1和I0.2的状态均为“0”,那么在程序里就将I0.0的常开触点和I0.1、I0.2的常闭触点相与来识别SB1的状态;若SB2按下时,I0.0和I0.1均为“1”,I0.2为“0”,此时识别程序应该为I0.0和I0.1的常开触点与上I0.2的常闭触点;其它点的情况类似,输入信号SB1和SB2的STL识别程序如下,其中,M2.1、M2.2的状态就代表了信号SB1、SB2的状态。
LD I0.0
AN I0.1
AN I0.2
= M2.1
//信号SB1的识别
LDN I0.0
A I0.1
A I0.2
= M2.2
//信号SB2的识别
需要指出:这种方法不能识别2个及2个以上的信号同时为1的情况,如SB1和SB3同时接通,程序会把它当成SB2接通的情况识别。图7中二极管的作用是为了隔断寄生电流形成通路。其实,用3个输入点多可以7个信号的识别,如果在图7中再加一个SB7,用3个二极管连到I0.0、I0.1、I0.2上,则可以通过将3个点的常开触点相与来识别SB7,但这样过于繁琐,因此一般不采用。
图7 硬件接线图
4.4 用输入/输出口组成矩阵式键盘
若控制系统需要设计键盘,常规的思路是每个按键接一个输入口。然而,当键数增加时,极为浪费输入点,因此仿照微机系统中制作矩阵式键盘的思路,在PLC系统中利用I/O点组成矩阵式键盘,如图8所示为3×3键盘结构图。编程思路:首先,判断整个键盘上有无键按下,方法是将行全输出为1,然后读入列的状态,如果列读入的状态全为0,则无键按下,不全为0则有键按下;其次,逐列扫描,方法是依次将行线送1,检查对应列线的状态,若列线全为0,则按键不在此行;若不全为0,则按键必在此行,且是与1电平列线相交的那个键。由此可见,对应的软件编程比较复杂,但是在有些小型的控制系统中可以避免增加操作屏或触摸屏,从而tigao系统性价比。若需要详细的硬件设计图和软件程序可与作者联系。
图8 3×3键盘结构图
5 结束语
本文从硬件设计、软件编程以及硬件软件结合三个方面探讨了扩展PLC I/O点的方法。在具体应用时,还需考虑每种扩展方法的一些优缺点以及抗干扰能力等问题。若能合理的利用这些方法,必能有效的节省PLC的I/O点数,降低系统成本,提供性价比,更为充分的发挥PLC的优势。
随着PLC的推广普及,PLC产品的种类和数量越来越多,而且功能也日趋完善。近年来,从美国、日本、德国等国引进的PLC产品及国内厂家组装或自行开发的产品已有几十个系列、上百种型号。PLC的品种繁多,其结构型式、性能、容量、指令系统、编程方法、价格等各不相同,适用场合也各有侧重。因此,合理选择PLC,对于tigaoPLC在控制系统中的应用起着重要作用。
1 机型的选择
PLC机型选择的基本原则是,在功能满足要求的前提下,选择可靠、维护使用方便以及性能价格比的优化机型。
在工艺过程比较固定、环境条件较好(维修量较小)的场合,建议选用整体式结构的PLC;其它情况则好选用模块式结构的PLC。
对于开关量控制以及以开关量控制为主、带少量模拟量控制的工程项目中,一般其控制速度无须考虑,因此,选用带A/D转换、D/A转换、加减运算、数据传送功能的低档机就能满足要求。
而在控制比较复杂,控制功能要求比较高的工程项目中(如要实现PID运算、闭环控制、通信联网等),可视控制规模及复杂程度来选用中档或机。其中机主要用于大规模过程控制、全PLC的分布式控制系统以及整个工厂的自动化等。根据不同的应用对象,表1列出了PLC的几种功能选择。
表1 PLC的功能及应用场合
对于一个大型企业系统,应尽量做到机型统一。这样,同一机型的PLC模块可互为备用,便于备品备件的采购和管理;同时,其统一的功能及编程方法也有利于技术力量的培训、技术水平的tigao和功能的开发;此外,由于其外部设备通用,资源可以共享,因此,配以上位计算机后即可把控制各独立系统的多台PLC联成一个多级分布式控制系统,这样便于相互通信,集中管理。
2 输入/输出的选择
PLC是一种工业控制系统,它的控制对象是工业生产设备或工业生产过程,工作环境是工业生产现场。它与工业生产过程的联系是通过I/O接口模块来实现的。
通过I/O接口模块可以检测被控生产过程的各种参数,并以这些现场数据作为控制信息对被控对象进行控制。同时通过I/O接口模块将控制器的处理结果送给被控设备或工业生产过程,从而驱动各种执行机构来实现控制。PLC从现场收集的信息及输出给外部设备的控制信号都需经过一定距离,为了确保这些信息的正确无误,PLC的I/O接口模块都具有较好的抗干扰能力。根据实际需要,一般情况下,PLC都有许多I/O接口模块,包括开关量输入模块、开关量输出模块、模拟量输入模块、模拟量输出模块以及其它一些特殊模块,使用时应根据它们的特点进行选择。
2.1 确定I/O点数
根据控制系统的要求确定所需要的I/O点数时,应再增加10%~20%的备用量,以便随时增加控制功能。对于一个控制对象,由于采用的控制方法不同或编程水平不同,I/O点数也应有所不同。
表2列出了典型传动设备及常用电气元件所需的开关量的I/O点数。
表2 典型传动设备及常用电气元件所需的开关量的I/O点数
2.2 开关量输入/输出
通过标准的输入/输出接口可从传感器和开关(如按钮、限位开关等)及控制(开/关)设备(如指示灯、报警器、电动机起动器等)接收信号。典型的交流输入/输出信号为24~240V,直流输入/输出信号为5~240V。
尽管输入电路因制造厂家不同而不同,但有些特性是相同的。如用于消除错误信号的抖动电路;免于较大瞬态过电压的浪涌保护电路等。此外,大多数输入电路在高压电源输入和接口电路的控制逻辑部分之间都设有可选的隔离电路。
在评估离散输出时,应考虑熔丝、瞬时浪涌保护和电源与逻辑电路间的隔离电路。熔丝电路也许在开始时花费较多,但可能比在外部安装熔丝耗资要少。
2.3 模拟量输入/输出
模拟量输入/输出接口一般用来感知传感器产生的信号。这些接口可用于测量liuliang、温度和压力,并可用于控制电压或电流输出设备。这些接口的典型量程为-10~+10V、0~+10V、4~20mA或10~50mA。
一些制造厂家在PLC上设计有特殊模拟接口,因而可接收低电平信号,如RTD、热电偶等。一般来说,这类接口模块可用于接收同一模块上不同类型的热电偶或RTD混合信号。
2.4 特殊功能输人/输出
在选择一台PLC时,用户可能会面临一些特殊类型且不能用标准I/O实现的I/O限定如定位、快速输入、频率等 。此时用户应当考虑供销厂商是否提供有特殊的有助于大限度减小控制作用的模块。有些特殊接口模块自身能处理一部分现场数据,从而使CPU从耗时的任务处理中解脱出来。
2.5 智能式输入/输出
当前,PLC的生产厂家相继推出了一些智能式的输入/输出模块。一般智能式输入/输出模块本身带有处理器,可对输入或输出信号作预先规定的处理,并将处理结果送入CPU或直接输出,这样可tigaoPLC的处理速度并节省存储器的容量。
智能式输入/输出模块有高速计数器(可作加法计数或减法计数)、凸轮模拟器(用作编码输人)、带速度补偿的凸轮模拟器、单回路或多回路的PID调节器、ASCII/BASIC处理器、RS—232C/422接口模块等。表3归纳了选择I/O模块的一般规则。
表3 选择 PLC 的 I/O 接口模块的一般规则
3 PLC存储器类型及容量选择
PLC系统所用的存储器基本上由PROM、E-PROM及PAM三种类型组成,存储容量则随机器的大小变化,一般小型机的大存储能力低于6kB,中型机的大存储能力可达64kB,大型机的大存储能力可上兆字节。使用时可以根据程序及数据的存储需要来选用合适的机型,必要时也可专门进行存储器的扩充设计。
PLC的存储器容量选择和计算的种方法是:根据编程使用的节点数jingque计算存储器的实际使用容量。第二种为估算法,用户可根据控制规模和应用目的,按照表4的公式来估算。为了使用方便,一般应留有25%~30%的裕量,获取存储容量的佳方法是生成程序,即用了多少字。知道每条指令所用的字数,用户便可确定准确的存储容量。表4同时给出了存储器容量的估算方法。
表4 控制目的估算存储器容量的方法
4 软件选择
在系统的实现过程中,PLC的编程问题是非常重要的。用户应当对所选择PLC产品的软件功能有所了解。通常情况下,一个系统的软件总是用于处理控制器具备的控制硬件的。但是,有些应用系统也需要控制硬件部件以外的软件功能。例如,一个应用系统可能包括需要复杂数学计算和数据处理操作的特殊控制或数据采集功能。指令集的选择将决定实现软件任务的难易程度。可用的指令集将直接影响实现控制程序所需的时间和程序执行的时间。
5 支撑技术条件的考虑
选用PLC时,有无支撑技术条件同样是重要的选择依据。支撑技术条件包括下列内容:
(1) 编程手段
便携式简易编程器主要用于小型PLC,其控制规模小,程序简单,可用简易编程器;
CRT编程器适用于大中型PLC,除可用于编制和输入程序外,还可编辑和打印程序文本;
由于IBM-PC已得到普及推广,IBM-PC及其兼容机编程软件包是PLC很好的编程工具。目前,PLC厂商都在致力于开发适用自己机型的IBM-PC及其兼容机编程软件包,并获得了成功。
(2) 进行程序文本处理
简单程序文本处理以及图、参量状态和位置的处理,包括打印梯形逻辑;
程序标注,包括触点和线圈的赋值名、网络注释等,这对用户或软件工程师阅读和调试程序非常有用;
图形和文本的处理。
(3) 程序储存方式
对于技术资料档案和备用资料来说,程序的储存方法有磁带、软磁盘或EEPROM存储程序盒等方式,具体选用哪种储存方式,取决于所选机型的技术条件。
(4) 通信软件包
对于网络控制结构或需用上位计算机管理的控制系统,有无通信软件包是选用PLC的主要依据。通信软件包往往和通信硬件一起使用,如调制解调器等。
6 PLC的环境适应性
由于PLC通常直接用于工业控制,生产厂都把它设计成能在恶劣的环境条件下可靠地工作。尽管如此,每种PLC都有自己的环境技术条件,用户在选用时,特别是在设计控制系统时,对环境条件要给予充分的考虑。
一般PLC及其外部电路(包括I/O模块、辅助电源等)都能在表5所列的环境条件下可靠工作。
表5 PLC的工作环境
7 结束语
随着科技的不断进步,PLC的种类日益繁多,功能也逐渐增强。文章中尽管归纳了一些选用PLC的方法,但在实际工作中还一定要依据实际情况做出适当的调整,以便设计出满足期望的控制系统