基于μC/OS-II的注塑机控制器的设计与开发专业:控制理论与控制工程绪论控制器整体方案设计控制器硬件设计控制器软件设计总结与展望绪论注塑机国内外研究现状简介发展历程1注射部分2合模部分3机身注塑机控制器研制现状单片机为主要处理器的解决方案开发成本高、开发时间长扩展性差、软件升级困难兼容性和可移植性差网络功能有限,价格竞争力不强绪论课题背景课题来源于深圳精盟科技有限公司注塑机改造项目,通过对已有的基于51单片机控制的注塑机的改进,采用ARM微处理器为控制核心,选用μC/OS-II实时操作系统。所做的工作1.整体方案的设计2.设计了以ARM微处理器为核心的硬件平台,完成了注塑机控制器外围电路的设计。3.搭建嵌入式系统软件平台,并完成在硬件平台上的移植4.设备驱动的设计和任务的划分绪论整体方案设计控制系统整体结构硬件方案设计软件方案设计整体方案设计控制器整体结构S3C2410Linux8寸彩色液晶触摸显示器报警/音响64个键盘大容量储存器SD存储卡S3C44B0μC/OS-II现场工业总线CAN、48510路温度采样A/D转换器开关量输入48路5路电子尺采样A/D转换器上位机下位机RS232微型打印机开关量输入48路两组压力液压阀D/A输出串口两组流量液压阀D/A输出一组背压输出整体方案设计下位机硬件结构框图光耦隔离存储器FLASH信号放大器/AD5路电子尺采样12位ADAD574串口通信功率放大D/A转换输出10路温度信号S3C44B0XµC/OS-II32路IO输入+16路备用压力、流量、背压比例阀32路IO输出+16路备用上位机整体方案设计下位机软件结构图上位机串口通讯下位机串口通讯10路温度控制系统安全检测4路压力、流量比例阀控制电子尺采样32路数字量输入/输出手动操作模式半自动操作全自动操作调模操作中子操作控制器硬件设计硬件设计遵循的原则分离式(核心板和扩展板两部分)控制器硬件设计硬件设计遵循的原则1.尽可能选择典型电路2.处理器的兼容性和可扩展性3.软硬件协同设计4.可靠性和抗干扰措施5.外围电路的驱动能力控制器硬件设计分离式结构•核心控制板数据处理与存储指令输出通讯控制器硬件设计•底层控制板模拟信号采集数字量输入输出比例阀控制控制器硬件设计•设计中的问题I/O口的扩展控制器硬件设计•核心板与底层板的信号线接口定义GPC口:作为数据口,16位DA输出控制:GPE0、GPE3、GPF2-4电子尺输入控制:GPG0-5温度输入控制:GPB5,GPB7-10温度输出控制:GPD5开关量输入控制:GPD0-2开关量输出控制:GPD3,GPD4控制器硬件设计•温度输入模块GPB5:WD1输入,AD转换结束时引脚状态为低电平GPB7:WD2输出,低电平时,AD低8位输出GPB8:WD3输出,高电平电,AD高4位输出GPB9:WD4输出,低电平有效AD数据输出使能GPB10:WD5输出,高电平有效74LS273时钟信号•电子尺输出部分:GPG0:DZC1输入,判断AD是否转换完的信号,低电平表示转换完毕GPG1:DZC2输出,高电平有效,使能信号GPG2:DZC3输出,读/启动信号,高电平读数据,低电平转换GPG3:DZC4输出,上升沿有效,74LS273时钟信号GPG4:DZC5输出,低电平有效,74LS245的使能信号GPG5:DZC6输出,低电平有效,使74LS245工作在输入状态控制器硬件设计•DA输出GPE0:DA1输出,上升沿有效,使能数据输入GPE3:DA2输出,低电平有效,使能MP7258的写信号GPF2:DA3输出,低电平有效,MP7258(1)的片选信号GPF3:DA4输出,低电平有效,MP7258(2)的片选信号GPF4:DA5输出,选择MP7258的输出口,低电平A输出,高电平B输出控制器硬件设计控制器硬件设计•输入模块GPD0:2N1输出,低电平有效GPD1:2N2输出,低电平有效GPD2:2N3输出,低电平有效均为片选信号,选择三路16位数据的输入•输出模块GPD3:OUT1输出,高电平有效GPD4:OUT2输出,高电平有效均为片选信号,选择数据输出通道控制器软件设计μC/OS-II操作系统移植μC/OS-II设备驱动设计注塑机控制系统软件设计控制器软件设计μC/OS-II操作系统移植1.移植的定义为特定的处理器编写特定代码的过程2.μC/OS-II移植的条件可重入、中断、硬件堆栈和相关指令3.μC/OS-II在S3C44B0X上的移植OS_CPU.H、OS_CPU_A.ASM、OS_CPU_C.C控制器软件设计名称函数/宏定义所在文件C语言/汇编功能简介OS_STK_GROWTH宏定义OS_CPU.HC语言堆栈增长方向OS_ENTER_CRITICAL()宏定义OS_CPU.HC语言禁止中断OS_EXIT_CRITICAL()宏定义OS_CPU.HC语言允许中断OSStartHighRdy()函数OS_CPU_A.ASM汇编就绪态最高优先任务运行OSCtxSw()函数OS_CPU_A.ASM汇编任务级任务切换OSIntCtxSw()函数OS_CPU_A.ASM汇编中断级任务切换OSTickISR()函数OS_CPU_A.ASM汇编时钟节拍OSTaskStkInit()函数OS_CPU_C.CC语言任务堆栈初始化需要修改的关键函数和宏定义控制器软件设计μC/OS-II结构图应用软件(用户代码)UCOS-II(与处理器无关代码)OS_CORE.COS_FLAG.COS_MBOX.COS_MUTEX.COS_Q.COS_SEM.COS_TASK.COS_TIME.CUCOS_II.CUCOS_II.HUCOS-II配置(与应用相关)OS_CFG.HINCLUDES.HUCOS-II移植(处理器相关代码)OS_CPU.HOS_CPU.A.ASMOS_CPU_C.CCPU定时器软件硬件控制器软件设计设备驱动设备驱动程序是操作系统内核与机器硬件之间的接口。在μC/OS-II上设备驱动程序设计的3个步骤:1.对设备的初始化。2.为用户端的有关操作编写接口函数3.编写中断服务程序控制器软件设计Tx(1)(2)(3)(4)环状缓冲区发送缓冲区入指针发送缓冲区出指针OSUTXD0ISR()UTXD0Isr()CommGetTxChar()CommPutChar()(7)(6)(5)发送信号量TI=1COMM_44B0模块COMMRTOS模块Rx(1)(2)(3)(4)环状缓冲区接收缓冲区入指针接收缓冲区出指针OSURXD0ISR()URXD0Isr()CommPutRxChar()CommGetChar()(6)(5)接收信号量COMM_44B0模块COMMRTOS模块•串口驱动设计底层串行I/O模块(COMM_44B0)缓冲串行I/O模块(COMMRTOS)控制器软件设计•底层串行I/O模块(COMM_44B0):Uart_Init()--串口初始化OSUTXD0ISR()--发送中断底层程序(汇编)UTXD0Isr()--发送中断处理程序OSURXD0ISR()--接收中断底层程序(汇编)URXD0Isr()--接收中断处理程序串口驱动的实现控制器软件设计•缓冲串行I/O模块(COMMRTOS):CommBufInit()--环型缓冲区的初始化CommPutChar()--应用程序的接口函数(发送)CommPutRxChar()--底层接收函数CommGetChar()--应用程序的接口函数(接收)CommGetTxChar()--底层发送函数控制器软件设计注塑机控制系统软件设计1.注塑机基本工序2.控制方式脱模开模冷却定型座台退抽胶储料保压射胶座台进合模锁模制品落下检测座台退顶出复位塑胶温度控制控制器软件设计开始关安全门故障排除射台前进到位射台退后终止锁模超时故障一级注射射胶时间到高压锁模锁模终止低压锁模倒索退针报警时间、外部检测选择方式时间延迟开模顶针完成射台后退熔胶二级注射三级注射顶针并计数开模终止快开模慢开模冷却时间到延时冷却是否脱模报警入二脱模方式NYYYNYY检测方式延时锁模方式NYYNNNN注塑机顺序控制程序流程图控制器软件设计注塑机主要任务划分注塑机管理控制键盘操作界面显示信息存储串口通讯压力流量比例阀开关量控制温度控制电子尺控制控制器软件设计下位机用户任务•Command_Task:负责判断是否有上位机传输过来命令信号。•Temperature_Task:负责温度控制。•Pressure_Task:负责压力控制。•GetWeight_Task:负责对称重传感器的重量数据采集。•Err_Task:负责报警的判断与输出。•DataFresh_Task:通过RS232将数据传输给上位机,实现数据的及时更新。•Feed_Task:负责加料控制。当从任务GetWeight_Task中获得的原料重量低于设定重量下限时打开加料阀,高于设定重量上限时关闭加料阀。以及手动加料时的操作等。•ReadInput_Task:负责各种输入信号的读取,包括温度、压力、以及变频器故障信号、过压信号、主机运行信号等。•Output_Task:负责外部各行程开关等开关量的控制。论文工作总结及展望论文主要完成的工作1)设计出了具有良好性能的嵌入式工业平板电脑的硬件系统2)搭建起软件系统平台3)应用于工业注塑机控制器的设计论文的不足之处未来工作的研究目标