来源:网络转载更新时间:2020-08-20 09:06:30点击次数:3308次
0引言
枕式包装机是食品、医药等包装行业中应用非常广泛的一种包装机械,是一种以运动控制为主导的机器。传统的枕式包装机主要采用差速齿轮箱结构,优点是运行稳定,缺点是噪音较大,机械部分容易损坏,封装规格的调整及包装尺寸的调整十分麻烦。随着计算机技术、传感器技术的发展,PLC技术日益成熟,应用越来越广泛。包装机的主机系统开始采用PLC和伺服控制器作为控制系统核心,可以使包装速度高、定位准确,且系统更加稳定可靠。然而传统的电机驱动器提供了丰富的运动控制功能,但逻辑控制和复杂运算功能却比较弱,而普通的PLC提供了全面的逻辑控制功能,但又很难具备运动控制的全部功能。因此PLC和伺服控制器配合使用的方式存在高速数据传输、数据同步和精确控制等方面的问题。西门子新一代的运动控制平台SimotionD是为以运动控制起主导作用的机器而设计的,本身集成了逻辑控制与运动控制,可以独立完成以往PLC加电机调速器的所有功能,可以实现由一个开发环境解决所有运动控制、逻辑及工艺的控制问题,并且它还能够提供所有必要的工具,从编程到参数设定,从测试到故障诊断。因此基于SimotionD控制系统的包装机可以大大提高生产效率。
.1系统总体结构设计
系统的硬件总体结构框图如图1所示。
其中变频器通过RS485232转换后与上位机通信,用来控制吸气或吹气的强度,这由生产工艺
图1硬件总体结构框图
决定;S7-200PLC及扩展模块通过RS485与上位机通信用来控制横封及纵封装置的温度。此控制系统的核心是SimotionD4250SimotionD425.是新一代的运动控制器,可以控制1到16个电机轴,通过DRIVE-CLiQ接口与Sinamics驱动模块进行数据交换,在此系统中它通过以太网接口与上位机通信,其突出优点有: •
(1)强大的工程设计,组态及平台SimotionScout,可以实现工艺参数及曲线的实时跟踪(TraceandMeasurement),便于调试及进行故障诊断,并可以对参数进行验证和优化。
(2)相对独立的背板散热和电路板保护涂层,可以保证电气柜的高防护等级,满足恶劣环境对电气设备的要求:长期,稳定和小维护量。
(3)主动前端技术和电能回馈技术。主动前端(ActiveFrontEnd)技术保证了直流母线的电压,防止电网电压的波动对连续生产产生影响。而电能回馈技术保证了系统的四象限运行,使系统更加节能。
(4)极高的调速精度,Sinamics系列伺服驱动可以实现压频(VF)控制,矢量控制(VectorCon-血1),伺服控制(ServeControl),频率输出精度达0.01%,保证了调速的精确性和稳定性。
2系统组成
枕式包装机要完成成型、定位和封口等功能,主要包括以下几个系统部分;
.(5)纵封送料系统。纵封送料系统由伺服驱动送料辐,与横切送料系统配合,根据包装膜的袋长等技术指标达到准确送膜并封切(横切到包装膜的色标位置)的要求。系统结构如图2所示。
图2系统结构示意图
3软件设计
本系统软件在SimotionSCOUTV4.0平台下编写,运动控制程序用MCC语言编写,通信部分程序用ST(StructuredText)语言编写,程序的执行有以下特点:
(1)执行系统中的BackgroudTask任务被操作系统周期调用,其作用相当于PLC中的0B1。
(2)TechnologicalFaultTask任务是当系统中岀现报警时被调用,PerihperalFaultTask在外部IO出错时被调用,如果这两个任务没有程序,系统将停机,所以将一个空程序分配给这两个任务。
(3)MotionTask启动一个运动任务,如定位等,MotionTask与BackgroundTask不同,MotionTask被调用后只执行一次,该任务可以使用等待指令在执行中无限期等待,但执行完后不会自动再次执行。
(4)BackgroundTask任务中不能使用等待指令,否则BackgroundTask运行超时会造成系统死机。
SimotionD下位机以Udp子程序接收主机的命令,解析并根据读写命令实现与SimotionD数据的交互。编程思路以流程图方式说明,如图3所示。
图3上位机与SimotionW25的通信流程图
以下为ST语言编写的数据接收检査并发送数据的部分通信程序主要代码:
VAR
i:INT;
END.VAR
nArrayRWLen:=512;数组长度
nError:=0;〃默认nError=0bWrilenag:=FALSE;〃默认为读数据nEtxCoimt:=8;Default
,myStructRetUdpReceive;=_udpReceive(port:=3000
,communicationMode:=DO_NOT_CLOSE_ON_EXrT
,nextCommand:=IMMEDIATELY
,receiveVariable:=buffer
);
〃数据接收检査并发送数据到上位机
IFmyStructRetUdpReceive.funcdonResult=0THEN
IFmyStructRetUdpReceive,dataLength=2THENdataOK
tmpByte:=bufiferfO];STXBYTE_TOJNT(bufifer[1]);
IFtmpByte=2THENI.FiratisSTX(02)nCommand:=buffer[1];ReadorWritetmpWord:=buffer]2]*256+buffer[3];nStartAddress:=WORD_TO_INT(tmpWord);tnipWord:=buffer]4]*256+bufferf5];nDataLen:=WORD_TO_INT(tmpWord);tmplnt:=nStartAddress+nDataLen; '
IFtmplnt>nAirayRWl.cnTHEN2.TheLenofDataisover
nError:=3;DataLenError
ELSE
IFnCommand=49THENWrite
nEtxCount:=8+nDataLen;
ENDJF;
tmpByte;=buffer[nEtxCount];ETX
IFtmpByte=3THENETXSuccess
nError:=0;
EI5E
nError:=4;ETXError
END_IF;
END_IF;2.TheLenofDataisover
ELSE
nError:=1;STXError
END.IF;I.FimtisSTX(02)END
NoError,ThenHMItoReadandWriteData
IFnError=0THEN
buffer[0]:=2;STX'
IFnCommand=48THENHMIReadreadanaytobuff
er
nWriteFlag:=FALSERead
FORi:=:1TOnDataLenDObuffer[i]:=byteArray[i+nStartAddressT];END_FOR;
buffer[nDataLen+1]:=0;
buffer[nDataLen+2]:=0;
buffer]nDataLen+3]:=3;ETX
nSendLen:=nDataLen+3;
ELSE
IFnCommand=49THEN写缓冲数据到数组nWriteFlag:=TRUE;HMIWritetoArray.
FORi;=1TOnDataLenDObyteArray[i+nStartAd-dress-1]:=buffer[i+5];END.FOR;
buffer[O]:=6;确认字符0x06
nSendLen:=1;
ELSE
nError:=2;命令错误
buffer[0]:=21;〃非应答0x15nSendLen:=1;
ENDJF;
ENDJF;
ELSESendErrorNAK
buffer[0]:=21;〃非应答0x15
nSendLen:=1;
ENDJF;
完成上位机读写数据
'发送数据到上位机
tmpDint:=.udpSend(sourcePort:=3000
,destinationAddress:=myStnictRetUdpReceive.wurceAddress
,destinationport:=myStructRetUdpReceive.sourcePort
,communicationMode:=CLOSE_ON_EXITDO_NOT_CLOSE_ON_EXITCLOSE_ON_EXIT
.dataLength:=INT_TO_UINT(nSendLen)+1,data:=buffer .
);
ENDJF;数据接收,检査并发送数据到上位机完毕
数据读写测试
IFnWriteFlag=TRUETHENHMIWritetoArray
“读写标志”默认为读,Simotion主程序每次判断“读写标志”,如果为读标志则将要读取的相关数据写入交互数据数组的相应位置。
当Udp子程序判断命令为写,将数据写入交互数据数组,并将“读写标志”置为写标志后,主程序判断“读写标志”为写后,将交互数据数组的数据写入相应的数据区,然后将“读写标志”置为读标志(这样保证只写一次)。
4结束语
本系统与传统包装机相比省去了大量的齿轮箱结构,改进了传统包装机噪音大、机械容易损坏、封装精度低、包装尺寸规格的调整十分麻烦的缺点。经过调试,效果良好,本系统已经在国内食品生产企业应用,并出口到多个国家地区。
文章来源于网络转载,侵删
×