CN205003526U - 一种基于sopc技术的plc协同控制装置 - Google Patents

一种基于sopc技术的plc协同控制装置 Download PDF

Info

Publication number
CN205003526U
CN205003526U CN201520703874.3U CN201520703874U CN205003526U CN 205003526 U CN205003526 U CN 205003526U CN 201520703874 U CN201520703874 U CN 201520703874U CN 205003526 U CN205003526 U CN 205003526U
Authority
CN
China
Prior art keywords
module
plc
niosii
host computer
control device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201520703874.3U
Other languages
English (en)
Inventor
郭奔
周小忠
孙哲建
李汉莹
朱辉平
周广睿
金顺华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Tobacco Zhejiang Industrial Co Ltd
Original Assignee
China Tobacco Zhejiang Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Tobacco Zhejiang Industrial Co Ltd filed Critical China Tobacco Zhejiang Industrial Co Ltd
Priority to CN201520703874.3U priority Critical patent/CN205003526U/zh
Application granted granted Critical
Publication of CN205003526U publication Critical patent/CN205003526U/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本实用新型涉及基于SOPC技术的PLC协同控制装置,该装置包括硬件系统和软件系统两部分;硬件系统包括上位机和下位机,下位机由Nios?II软核处理器模块、存储器模块和外围模块组成,其中Nios?II软核处理器模块由CPU模块、TIMER0模块、TIMER1模块、UART模块和JTAG模块组成,软件系统包括嵌入式uC/OS-II实时操作系统、上位机软件、下位机软件和虚拟软核PLC;本实用新型具有很强的可修改性和可移植性;由于添加了uC/OS-II实时操作系统保证了系统运行的实时性,并且能够根据特定的需要编写自定义IP核,自由添加所需要的特定功能,同时方便的增加或减少I/O端口的数量,使系统更具可拓展和维护性。

Description

一种基于SOPC技术的PLC协同控制装置
技术领域
本实用新型涉及一种工控可编程逻辑嵌入式软核PLC装置,尤其涉及一种基于SOPC技术的协同PLC实现工业自动化控制的装置。
背景技术
由于传统硬件PLC技术对外封闭,各个生产厂商的PLC硬件平台各不相同,支持的PLC语言也不相同,而且相互之间通信的协议和总线也完全不同。因此,随着计算机技术的发展,人们已经逐渐认识到硬件PLC的通用性、兼容性和拓展性不好正在制约着PLC的快速发展。同时,随着卷烟工业新一轮的技改,大量新型烟草制丝设备从德国HAUNI、意大利Garbuio等国外烟机设备公司引进,设备厂家对于关键设备的PLC程序采取了技术封锁甚至加密等手段。因此,对于烟机功能改进,需要寻求一种新的解决方案来突破传统PLC内部程序封锁以及外部通用性、兼容性差等问题。
过去,逻辑控制器系统的开发多基于ASIC设计的硬件平台,而近年来出现的可编程片上系统(SOPC)解决方案得到了业界广泛的重视并迅速发展。SOPC不仅仅使PCB设计更为简单,而且设计更灵活,开发更高效。它的特点在于其可编程性,即利用现场可编程门阵列(FPGA)器件的可编程性进行SOC(systemonchip)设计。SOPCBuilder为每一个元件提供一个向导,利用该向导很容易定制元件功能,且通过该向导能够非常方便地在一个设计中加入NiosII软核处理器、外设接口等。为了将微处理器核、外围设备、存储器和其它IP核相互连接起来,SOPCBuilder能够自动生成片上总线和总线仲裁器等所需的逻辑。SOPCBuilder在一个工具中实现了嵌入式系统各个方面的开发,包括软件的设计和验证,因此运用SOPC技术可以在FPGA上便捷、快速定制各种复杂逻辑控制,并将传统PLC中逻辑移植或转移到FPGA器件上实现。
发明内容
本实用新型的目的在于提供一种基于SOPC技术的PLC协同控制装置。将基于SOPC技术的FPGA作为虚拟PLC来协助传统硬件PLC完成自动化控制,解决传统PLC单一控制的缺点,通过SOPC定制各种功能与传统PLC实时通讯达到双核协同时控制同一设备的目的。
为了实现上述的目的,本实用新型采用了以下的技术方案:
一种基于SOPC技术的PLC协同控制装置,该装置包括硬件系统和软件系统两部分;所述的硬件系统包括上位机和下位机,所述的上位机运行在PC机上,完成编写PLC程序以及编译成目标代码以及代码传输工作;所述的下位机使用AlteraFPGA(EP2c35F672c6)NiosII嵌入式软处理器为硬件平台,与上位机之间通过RS232协议进行通信;所述的下位机由NiosII软核处理器模块、存储器模块和外围模块组成,其中NiosII软核处理器模块由CPU模块、TIMER0模块、TIMER1模块、UART模块和JTAG模块组成,对FPGA配置时,通过SOPCBuilder系统综合软件设定NiosII软核参数,并设置TIMER0模块、TIMER1模块、UART模块和JTAG模块相关参数,自动分配各模块基地址和指定NiosII处理器的复位地址与异常中断地址,生成相应的NiosII系统,UART模块通过使用RS232协议可实现上位机与FPGA的传输以及PLC梯图文件的串口通信,JTAG模块通过转换电路将RS232协议转换成RS485协议,再通过CP341卡实现与PLC通讯。
作为优选,所述的CPU模块选用基于RISC技术的32位嵌入式处理器NiosII模块。
作为优选,所述的存储器模块选用掉电数据不丢失的FLASH存储器。
作为优选,所述的外围模块包括一个LCD字符型液晶显示屏、4个LED灯、两个开关。LCD用来显示PLC虚拟机的运行状态,而LED与两个开关则用来实现PLC的功能。
作为优选,所述的嵌入式uC/OS-II实时操作系统是一种基于优先级的可抢先硬实时内核。
本实用新型由于选用NiosII软核处理器模块为核心并利用SOPC技术进行构建,具有很强的可修改性和可移植性;由于添加了uC/OS-II实时操作系统保证了系统运行的实时性,并且能够根据特定的需要编写自定义IP核,自由添加所需要的特定功能,同时方便的增加或减少I/O端口的数量,使系统更具可拓展和维护性;又由于FPGA具有较高的密度,能够集成很大的系统,因此又增加了系统的可靠性。
附图说明
图1为本实用新型的结构示意图。
图2为本实用新型协同PLC控制示意图。
图3为本实用新型系统结构示意图。
图4为本实用新型硬件组成示意图。
图5为本实用新型软件组成示意图。
图6为本实用新型虚拟软核PLC任务调度示意图。
图7为本实用新型虚拟软核PLC运行时序图。
具体实施方式
下面结合附图对本实用新型的具体实施方式做一个详细的说明。
如图1,基于SOPC技术的PLC协同控制装置包括硬件系统1和软件系统2两部分;所述的硬件系统1包括上位机3和下位机4;所述的下位机4由NiosII软核处理器模块5、存储器模块6和外围模块7组成,其中NiosII软核处理器模块5由CPU模块8、TIMER0模块9、TIMER1模块10、UART模块11、JTAG模块12组成;所述的软件系统2包括嵌入式uC/OS-II实时操作系统13、上位机软件14、下位机软件15、虚拟软核PLC16。
如图2,所述的基于SOPC技术的PLC协同控制装置就是在不改变原有PLC程序、硬件接线前提下,通过现场总线访问PLC内部资源,并将自身控制逻辑运算结果再次通过现场总线传回PLC,最终实现双核协同控制。
如图3,所述的上位机3运行在PC机上,完成编写PLC程序以及编译成目标代码以及代码传输等工作。
所述的下位机4使用AlteraFPGA(EP2c35F672c6)NiosII嵌入式软处理器为硬件平台,与上位机3之间通过RS232协议进行通信。
如图4,所述的CPU模块8选用基于RISC技术的32位嵌入式处理器NiosII模块5。对FPGA配置时,通过SOPCBuilder系统综合软件设定NiosII软核参数,在常用外围设备及接口组件中选择TIMER0(计时器)模块9、TIMER1(定时器)模块10、UART模块11、JTAG模块12以及UART(RS-232)等模块,并设置相关参数,自动分配各模块基地址和指定NiosII处理器的复位地址与异常中断地址,生成相应的NiosII系统。UART接口通过使用RS232协议可实现PC机与FPGA的传输以及PLC梯图文件的串口通信等功能。JTAG12接口通过转换电路将RS232协议转换成RS485协议,再通过CP341卡实现与PLC通讯。基于SOPC技术的优势将很多资源集中在FPGA中,使系统的扩展与升级更加容易,只需在FPGA中添加相应功能的模块即可。对于自定义外设,可以通过VHDL硬件语言编写IP核,在SOPCBuilder中添加这个自定义组件,并通过标准Avalon总线连接。
所述的存储器模块6选用掉电数据不丢失的FLASH存储器来存储应用程序及要保存的数据参数;选用读写速度较高的SDRAM存储器来给uC/OS-II操作系统和应用程序提供运行空间并缓存中间处理数据。
所述的外围模块7包括一个LCD字符型液晶显示屏、4个LED灯、两个开关。LCD用来显示PLC虚拟机的运行状态,而LED与两个开关则用来实现PLC的功能。
如图5,所述的嵌入式uC/OS-II实时操作系统是一种基于优先级的可抢先硬实时内核。Altera公司提供的实时操作系统uC/OS-II,其作为NiosII系统的一部分,在硬件系统创建完成之后,开展一个基于NiosII处理器的MicroC/OS-II软件设计过程,并使用IDE对所有的RTOS模块进行配置。具体操作可以通过单击MicroC/OS-II下配置选项,为每一个选项检查所能选择的选项进行设置,例如最大任务、计时器功能、时间戳功能、消息邮箱等。
所述的上位机程序在PC机上执行,主要负责编译PLC梯形图并传输梯形图文件。通常在工控系统中可以通过使用总线、TCP/IP、串口传输等协议完成上位机与下位机(PLC虚拟机)的通讯。本设计采用VC++6.0MFC添加一个对话框到上位机的PLC编译系统应用程序中,通过添加MSComm控件以RS232通讯协议为基础,实现传输PLC文件给PLC虚拟机执行的功能。
所述的下位机设计通过设计NiosIIIDE完成。下载硬件设计中QuartusII最终生成配置文件到FPGA中,而后可以在NiosIIIDE下建立工程,编辑调试下位机程序。在新建的工程中,NiosIIIDE会根据SOPCBuilder对应系统配置自动生成一个定制的硬件抽象层(hardwareabstractionlayer,HAL)系统库,为程序和底层硬件的通信提供接口驱动程序,同时还提供一个可移植的uC/OS-II的实时操作系统环境,如此能够使编写的应用程序具有实时性,而uC/OS-II中也可直接调用HALAPI函数,如此就很方便使用C/C++语言设计程序。
所述的虚拟软核PLC是模拟实际计算机进行工作的软件系统,同真实计算机一样,它拥有自己的中央处理器、指令系统、存储器组织、输入输出等,可以接受指令系统的指令,完成计算或数据处理等任务。虚拟软核PLC是完成PLC程序代码解释、执行机制的核心部分。其主要负责接受上位机发送的类PLC逻辑程序命令,控制任务解释器的执行。由于虚拟软核PLC运行在uC/OS-II占先式内核实时系统中,任务解释器在PLC虚拟机中循环取得代码指令并执行相应的操作,实现PLC程序对外部设备的控制功能。针对工控PLC控制系统实时性的要求,将虚拟软核PLC顺序程序分为快逻辑任务和慢逻辑任务两部分,快逻辑仅仅用来负责短脉冲信号,这些信号主要包括急停、复位、外部减速和给迸暂停等,而慢逻辑则只处理一般信号。两个逻辑任务的管理和调度通过uC/OS-II实时系统内核完成。其中快逻辑程序每8毫秒执行一次,因而快逻辑程序应尽可能短。分割慢逻辑程序时为执行快逻辑程序,其中当分割数为n时,一个循环的执行时间为8n毫秒。由于两者的执行周期不同,而执行顺序逻辑程序过程中要保证输入输出缓存区的数据一致,因此可以分别为快逻辑和慢逻辑建立单独的逻辑队列缓存区。
如图6,运行系统的逻辑任务调度通过定义一个全局数组方式进行数据通信。调用计时器记录执行一次扫描的开始时间和结束时间,每当执行时间间隔为8ms,唤醒uC/OS-II实时系统的定时中断函数,调用内核级任务调度器,进行下一次快逻辑扫描,同时保存慢逻辑数据于慢逻辑缓存区中。由于uC/OS-II任务调度的时间取决于系统的时钟节拍,与应用程序中的任务无关,所以能够保证任务的实时性。
如图7,所述的虚拟软核PLC的工作方式与传统的软PLC基本相同,即通过打开UART串口,读入PLC执行文件,存入指定内存模块中,用户加载PLC逻辑目标代码之后,通过Task_routine()线程函数读取目标代码信息、分配系统资源并初始化相应变量,然后通过refresh_routine()线程函数读取相应配置信息,周期性的顺序扫描逻辑任务并执行基本逻辑指令与功能指令。uC/OS-II通过使用内核OSTimeDlyHMSM()延迟函数循环交替执行这两个线程,保证每个线程的执行周期。PLC虚拟机系统在每个扫描周期中,通过硬件抽象层,读入外部I/O设备寄存器的状态,然后调用refresh_routine()线程中的RefreshIO()函数,更新硬件抽象层中与该寄存器相对应的变量区的状态,最后通过硬件抽象层(HAL)提供的标准接口将系统内部的逻辑运行结果更新到外部开关设备。
以上所述仅为本实用新型的较佳实施例,凡依本实用新型申请专利范围所作的均等变化与修饰,皆应属本实用新型专利的涵盖范围。本实用新型的使用范围不仅局限于烟草工业控制,可拓展其他功能应用于更复杂的工业控制领域。在非精密控制领域,也可以将本实用新型独立作为PLC使用。

Claims (4)

1.一种基于SOPC技术的PLC协同控制装置,其特征在于:该装置包括上位机(3)和下位机(4),所述的上位机(3)运行在PC机上,完成编写PLC程序以及编译成目标代码以及代码传输工作;所述的下位机(4)使用AlteraFPGA(EP2c35F672c6)NiosII嵌入式软处理器为硬件平台,与上位机(3)之间通过RS232协议进行通信;所述的下位机(4)由NiosII软核处理器模块(5)、存储器模块(6)和外围模块(7)组成,其中NiosII软核处理器模块(5)由CPU模块(8)、TIMER0模块(9)、TIMER1模块(10)、UART模块(11)和JTAG模块(12)组成,对FPGA配置时,通过SOPCBuilder系统综合软件设定NiosII软核参数,并设置TIMER0模块(9)、TIMER1模块(10)、UART模块(11)和JTAG模块(12)相关参数,自动分配各模块基地址和指定NiosII处理器的复位地址与异常中断地址,生成相应的NiosII系统,UART模块(11)通过使用RS232协议可实现上位机(3)与FPGA的传输以及PLC梯图文件的串口通信,JTAG模块(12)通过转换电路将RS232协议转换成RS485协议,再通过CP341卡实现与PLC通讯。
2.根据权利要求1所述的一种基于SOPC技术的PLC协同控制装置,其特征在于,CPU模块(8)选用基于RISC技术的32位嵌入式处理器NiosII模块(5)。
3.根据权利要求1所述的一种基于SOPC技术的PLC协同控制装置,其特征在于,存储器模块(6)选用掉电数据不丢失的FLASH存储器。
4.根据权利要求1所述的一种基于SOPC技术的PLC协同控制装置,其特征在于,外围模块(7)包括一个LCD字符型液晶显示屏、4个LED灯、两个开关,LCD用来显示PLC虚拟机的运行状态,而LED与两个开关则用来实现PLC的功能。
CN201520703874.3U 2015-09-11 2015-09-11 一种基于sopc技术的plc协同控制装置 Active CN205003526U (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201520703874.3U CN205003526U (zh) 2015-09-11 2015-09-11 一种基于sopc技术的plc协同控制装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201520703874.3U CN205003526U (zh) 2015-09-11 2015-09-11 一种基于sopc技术的plc协同控制装置

Publications (1)

Publication Number Publication Date
CN205003526U true CN205003526U (zh) 2016-01-27

Family

ID=55160404

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201520703874.3U Active CN205003526U (zh) 2015-09-11 2015-09-11 一种基于sopc技术的plc协同控制装置

Country Status (1)

Country Link
CN (1) CN205003526U (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109190407A (zh) * 2018-09-11 2019-01-11 网御安全技术(深圳)有限公司 一种高性能加解密运算能力扩展方法及系统
CN109255259A (zh) * 2018-09-11 2019-01-22 网御安全技术(深圳)有限公司 一种高安全加解密运算能力扩展方法及系统
CN109298312A (zh) * 2018-09-06 2019-02-01 国营芜湖机械厂 基于sopc和软件替代技术的某型机载电路板测试装置及方法
CN109478052A (zh) * 2016-08-01 2019-03-15 西门子股份公司 确定应用程序的执行时间

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109478052A (zh) * 2016-08-01 2019-03-15 西门子股份公司 确定应用程序的执行时间
US10901794B2 (en) 2016-08-01 2021-01-26 Siemens Aktiengesellschaft Determining an execution time of an application program
CN109478052B (zh) * 2016-08-01 2022-07-12 西门子股份公司 确定应用程序的执行时间的方法和装置
CN109298312A (zh) * 2018-09-06 2019-02-01 国营芜湖机械厂 基于sopc和软件替代技术的某型机载电路板测试装置及方法
CN109190407A (zh) * 2018-09-11 2019-01-11 网御安全技术(深圳)有限公司 一种高性能加解密运算能力扩展方法及系统
CN109255259A (zh) * 2018-09-11 2019-01-22 网御安全技术(深圳)有限公司 一种高安全加解密运算能力扩展方法及系统
CN109255259B (zh) * 2018-09-11 2020-08-04 网御安全技术(深圳)有限公司 一种高安全加解密运算能力扩展方法及系统
CN109190407B (zh) * 2018-09-11 2020-08-04 网御安全技术(深圳)有限公司 一种高性能加解密运算能力扩展方法及系统

Similar Documents

Publication Publication Date Title
CN105137800A (zh) 一种基于sopc技术的plc协同控制装置
CN205003526U (zh) 一种基于sopc技术的plc协同控制装置
CN101344899B (zh) 一种片上系统的仿真测试方法及仿真测试系统
US8473269B1 (en) System-level hardware and software development and co-simulation system
CN101937205B (zh) 新型便携式plc编程装置
CN107861716B (zh) 软件定义型控制系统及控制方法
CN107341053A (zh) 异构多核可编程系统及其内存配置和计算单元的编程方法
CN102279766B (zh) 并行模拟多个处理器的方法及系统、调度器
CN110271009B (zh) 基于plc仿机器人指令实现机械手示教功能方法
CN102087609B (zh) 多处理器平台下的动态二进制翻译方法
CN104317236A (zh) 基于软plc技术的无线传感器网络控制终端
CN201583832U (zh) 新型便携式plc编程装置
CN103941650B (zh) 逻辑与运动集成控制器
CN103823467A (zh) 具备运动规划功能的工业机器人示教规划器的控制方法
CN102681465A (zh) 具备运动规划功能的工业机器人示教规划器及其控制方法
CN104750603A (zh) 一种多核dsp软件仿真器及其物理层软件测试方法
CN101303580A (zh) 支持多种cpu构造plc控制器的实现方法
CN105068860A (zh) 一种基于ARM的Linux采煤机管理主机系统
CN104698950A (zh) 一种外围设备控制方法、微控制器、上位机及系统
CN102096725A (zh) 一种基于fpga的仿真器
CN116822135A (zh) 实时仿真平台系统及仿真系统构建方法
CN102681941A (zh) 一种可扩展的嵌入式仿真测试系统
CN103942092A (zh) 一种支持LabView图形化编程的HLA协同仿真方法
CN102331961A (zh) 并行模拟多个处理器的方法及系统、调度器
CN208588917U (zh) 一种基于arm+dsp+fpga的工业机器人运动控制器

Legal Events

Date Code Title Description
C14 Grant of patent or utility model
GR01 Patent grant