在CNC系统中,通常将工业PC用作上位计算机,而将由车载系统组成的机床控制器用作下位计算机。文介绍了一种基于C8051和μC/ OS-et的数控机床机载执行控制器,并详细介绍了该执行控制器的软硬件结构,实时操作系统的移植方法。C8051f020上的μC/OS-Ⅱ中,给出了任务的分配,执行控制器软件模块的优先级的确定以及任务之间的通信的实现。经证明该系统可以满足数控系统的要求,并且是可行的。CNC机床系统中,功能模块可分为两部分:一部分是不需要高实时性能的功能,例如人机界面交互的管理。器等;另一部分是需要高实时性的功能,主要是伺服驱动,插补计算等。据此功能,系统采用两级控制结构,利用IPC丰富的软件资源提供图形化的人机交互环境。用集成执行控制器的高实时性和稳定性来获得快速可靠的结果。制方面,要充分利用两者的优点[1]。行端口用于两个级别之间的实时通信[2]。文主要介绍嵌入式执行控制器的实现。控机床系统的硬件结构如图1所示。PC用作上位机,并安装有专用软件来实现人机交互。C8051020 [3]芯片及其外围电路组成的集成执行控制器用作下位机,负责实时和可靠的控制。行时控制器通过串行端口从主机接收命令信息(包括插值命令和切换命令命令),然后将该信息转换为命令信号,并将其发送到主机组件。
应的执行。如,将内插命令转换为一系列内插信号,然后发送给引擎控制组件;将switch命令命令转换为输出信号,然后通过I / O驱动器隔离接口板发送到相应的开关控制器,运行时控制器还具有两个检测任务:一个是检测刀具向每个轴的极限点移动,另一个是检测间隙电压。

两条信息将用作运动过程中自动控制身体健康的基础。行控制器还负责将操作状态信息组装成帧并将其实时传输到上位机。
使用μC/OS-Ⅱ,必须将该核成功移植到C8051F020中。μC/OS-Ⅱ的移植主要包括修改三个文件:OS_CPU.H,OS_CPU_A.ASM和OS_CPU_C.C [4],具体修改内容如下。OS_CPU.H包含常量,宏以及使用#define定义的与处理器相关的类型定义。文件包含4种汇编语言功能。(1)在多任务系统启动函数OSStart()中调用OSStartHighRdy()函数。功能是设置系统执行标志OSRunning = TRUE;将优先级最高的任务堆栈指针加载到SP中的ready表中,并强制中断返回。(2)在任务级别切换功能中调用OSCtxSw()函数。功能是保存当前任务的环境变量,将当前SP存储在TCB任务中,加载优先级最高的任务的SP并准备好,还原任务的环境变量最高优先级准备就绪并中断返回。样就完成了任务级别的切换。(3)在OSIntExit()退出中断服务函数中调用OSIntCtxSw()。
色是在中断级别执行任务切换。(4)OSTickISR系统时钟节拍中断服务功能(),其周期大小决定了内核可以提供给应用系统的最小时隙服务。中断由C8051F020的定时器T0完成,并且延迟时间设置为20 ms。中:T0VAL是16位定时器T0的时间常数,系统使用外部25 MHz晶体振荡器,模式1(16位)。void OSTaskSwHook(void);无效的OSTCBInitHook(OS_TCB * ptcb)。中,最重要的是OSTaskStkInit(),它的作用是初始化堆栈,返回堆栈的最低地址,堆栈的长度,并方便汇编语言执行任务更改。他9个功能尚无特定功能,并且可以在必要时扩展系统内核时添加其功能。图2所示,整个系统分为3个功能块,即:与IPC的通信,命令的解释和命令的执行。中,通信具有发送和接收两个方面[8]。释命令时,恒温阀芯直接执行切换命令命令;执行命令时,需要进行插补计算,间隙电压和限位开关状态的检测以及过程监控。
IPC内置的执行控制器发送的信息有两种:接触信号和操作状态信息。集成执行控制器处于睡眠状态时,它会定期向IPC发送联系信号,以确定IPC是否正常运行。果IPC正常工作,则在接收到接触信号后,IPC会将响应信号发送回内置执行控制器。果发送的多个接触信号未收到响应,则认为IPC错误。集成致动器处于处理状态时,操作状态信息会以固定格式定期发送到IPC。IPC收到信息后,会将其转换为图形,文本和其他信息,将其显示并提供给操作员,这便于实时了解处理状态以及发送任务的实时性要求低。置的执行控制器接收IPC机器发送的三种信息的联系,响应和控制。果接收到接触信号或响应信号,则直接处理接收任务(发送响应信号或更新接触状态位);如果它既不是接触信号也不是响应信号,则视为控制消息。收任务完全接收到命令后,它将关闭写接收缓冲区并激活命令解释任务。收任务是由来自通信端口的接收中断触发的,它对实时性的要求很高。令解释任务首先验证并解释接收缓冲区中的命令信息,处理完成后,清除并打开接收缓冲区以允许接收新命令。样做的目的是不延迟接收缓冲区中的多个命令,并且在当前命令解释完成之前不接收新命令,以提高控制器的响应速度。’执行已集成到控件中。据命令执行的持续时间,命令分为两种类型:切换控制命令和插补命令。换命令的命令执行时间短,因此在解释命令后立即执行,以减少任务切换时间。

补命令是处理命令的执行时间较长,并且由特殊的过程监视任务执行。令解释任务仅负责在命令解释完成后激活过程监视任务。
令解释任务对实时性的要求很高。理监视任务根据当前操作状态(手动模式或自动模式)激活插值计算任务,并监视处理状态。手动工作模式下,操作员在PC上手动控制工具在-x, x,-y, y,-z, z六个方向上的移动,工具返回参考点,端面对准和孔中心定位操作。自动工作模式下,操作员向控制器发送线性运动和圆弧命令,然后控制器自动结束线性运动。视任务的实时处理要求很高。值计算的任务是计算轮廓起点和终点之间的中间点的坐标。系统采用点对点比较法进行插值。次执行插补任务时,都会生成一个行程增量,并将每个行程增量作为脉冲输出到步进电机。值任务的执行周期可能小于操作系统时钟,每秒达到数千次,因此将计时器(1)用作操作系统的运动时间控制器。值。值计算任务在此软件中具有最高的实时要求。系统用于CNC电火花线切割机床。
隙电压是电火花加工过程中工具(电极线)和工件之间的放电电压。数据是EDM流程[9]实时检测的重要参数,需要实时收集。位开关是指当工具移至治疗台的极限位置时触发的状态开关。到达该传感器时,工具必须停止工作并起到保护作用,也就是说限制机芯的位移,该信息也必须实时收集。两个任务具有实时性高,执行频繁和执行时间短的特点,因此将它们定义为单个发现任务。插值任务相同,由于发现任务的执行周期小于操作系统时钟,因此将计时器3用作发现任务的时间触发器。面实现的功能分为6个任务,介绍了这些任务的功能并分析了它们的实时需求[10]。面的任务划分如表1所示。

成任务划分后,应考虑任务的通信和同步。送任务和发现任务是独立的。
收任务,命令解释任务和过程监视任务已链接。图3所示,需要信号量和邮箱来解决任务之间的通信同步。(1)SemCmd命令信号量。接收任务接收到命令信息时,信号解释任务将发送和接收信号量。除并解释命令后,将清除信号量并可以接收新命令。(2)启动Mbox邮箱的过程。命令解释任务发现命令信息为插值命令时,该信息将转换为约定的格式并存储在邮箱中,由过程监视任务发送和接收。实验测试中,IPC通过串行端口向运行时控制器发送线性插值命令G01X1000Y2000LF,如图4所示,观察返回信息中x,y轴的坐标,每个点为基本上分布在直线上的点(0,0)和点(1000,2000)上,误差小于1个运动当量,说明整个系统工作正常。C8051F020处理器拥有丰富的硬件资源和强大的处理性能。ΜC/OS-Ⅱ具有实时性高,通用性强,移植扩展方便等特点。于该软件和硬件平台,可以降低系统的复杂性,并可以提高产品开发的速度。验证,该软硬件系统可以满足数控系统的要求,是可行的。
本文转载自
恒温阀芯 https://www.wisdom-thermostats.com
