张春宇,游 霞,袁 勇
(1.攀枝花学院 计算机学院,攀枝花 617000;2.成都九洲电子信息系统有限责任公司,成都 610031)
随着人们生活水平的不断提高,观众对文化艺术的要求随之增长,因此,对舞台电子技术的发展提出了更高的要求。除了剧本内容丰富外,舞台美术也要追求新意。因此,需要灯光、音响、舞台机械等舞美技术手段的配合以及不断按照观众的需求创新,从而在舞台上展现出新的天地。目前发达国家舞台技术产业飞速发展,发达的欧洲舞台机械很复杂,台上有:吊杆、吊点、灯光渡桥、灯光吊笼、防火幕;台下有:升降台、车台、转台、升降乐池、升降台等等。转台有多种形式:有的升降台中套转台,有的转台中合有升降台。最先进的舞台机械都由微机系统或计算机加PLC组成的系统进行控制。本文通过对多台单片机协作控制,在功能和性能上达到了国外的先进水平。本论文是作者长期从事舞台控制系统开发的科研成果。国内对舞台控制系统研究的相关文献报道较少,因此,本文对我国舞台控制系统的发展起到了一定的指导作用。
本系统组成有操作台、输出控制柜、信号收集选路柜、手持式遥控器。系统设计为分布控制系统(DCS),主控单元由一片89C52完成,数据采集和信号检测单元由多片89C52完成,其中还有一个选路模块有一片FPGA加一片89C2051控制,输出单元由一片89C52为核心完成50路吊杆的上下输出。主机发出各种控制命令并对反馈数据进行分析、判断、管理,从机接受主机来的命令控制舞台吊杆的驱动电机完成吊杆的升降停等。
系统主要是对各路吊杆的位置控制,吊杆以及各类舞台控制台的升降停等都是由电机的正转、反转实现,位置反馈传感器采用光电编码器,限位传感器采用行程开关,故系统的输入输出量为数字量和开关量。结合用户的需求,本系统设计为分布控制系统。其硬件组成框图如图1所示。
整个舞台控制系统的结构设计为主从式树型。根据系统功能划分的主机单元、分机单元及外围电路组成。系统硬件部分以AT89C51单片机为控制中心,其外围部件从功能上可以划分为串行通信接口、输入接口和输出接口三大部分。系统硬件组成框图如图2所示。
图2 系统硬件组成框图
数控吊杆系统控制对象众多,100路输出以驱动50台电机的正反转、停(对应于吊杆的升、降、停),而输入的需要处理的位置信号、限位信号共有150路,仅靠单机系统难以胜任,所以选用分布式控制系统。为减少子系统之间的连线,子系统以通信方式传递信息,主机、分机模块功能由89C52或89C2051为核心的控制板完成,通信网络为总线方式,整个系统信息数据由主机掌握,集中管理,分机收集处理子系统信息并及时告知主机,主机发送的消息可以被各从机接收,而各台单片机只能对PC机发送信息,从机之间不互相通信[1]。
系统各模块划分的原则是在保证系统功能和运行可靠的前提下,使操作者感到使用方便、操作灵活自如,在小小的控制室里,对系统的运行情况一目了然。而在功能实现上,各子机模块责任独立,没有任务交叉。主机模块掌管全局对运行过程集中管理,各模块均有处理本职责内异常情况的能力,分机上报信息给主机,信息由主机分派显示。
操作台是本系统的人机接口,此处包含主机模块、十个功能相同的吊杆监控判断模块,一个吊杆点动监控判断模块;输出控制柜远离操作台,设置一个输出控制子模块,对控制对象进行直接控制;信号集中分配柜,收集整个系统的输入信号,设置一个信号分配子模块用以筛选当前有用信息[2]。
1)主机模块
主机模块处于系统的顶端,协调系统的整个工作。具体为负责系统工作模式切换,并告知各分机模块做好相应准备;主机还负责存储预置的场次信息、停止后收集当前吊杆运行数据,并存储;选定场次后发送选中吊杆的位置信息,或预置信息给操作面板的吊杆监控模块,通知信号分配子模块,把需要的硬件传感信息送达相应的监控子模块;启动后,通知输出模块启动选中吊杆,并启动监控模块的运行监控。
2)吊杆监控判断模块是在系统中对吊杆位置信号进行监控,根据限位情况或预置数据与实际位置比较,做出上升、下降、停的判断。该模块设置有12只7段LED合二只发光二极管,用以指示被选中吊杆,以及吊杆的实际位置和预置位置、运行状态;还设置一些按键,供操作人员选择需运行吊杆并改变预置数据;它和主机模块共同组成系统人机接口。它配合主机完成场次数据的预设;并实时监控当前吊杆的情况,对信号进行处理,得出结果后告知主机,由主机分类处理。监控模块并不是时时使能,它的工作需要主机根据当前运行要求激活,一旦吊杆监控模块被主机选中,该模块便进入工作状态。
3)输出控制模块控制系统的执行单元,按主机要求做出相应输出控制对象的动作。
4)信号分配子模块是为了减少系统的连线,做到在控制级连线复用。在数控吊杆系统应用中,其特点是每次运行的吊杆数最多不超过10杆,而系统所有50根吊杆的信号包括100个上下限信号和50个脉冲信号,如全部接入控制系统则连线过多,加入分配子模块后每次仅是当前选中吊杆信号输入,信号输入线可减少80%,这样控制简单,降低了成本。
本系统软件主要是针对单片机的应用程序,由汇编语言编写,根据系统子模块,整个程序由主机程序、吊杆面板程序、输出单元程序、选路程序组成。选路单元硬件还包含一块FPGA,由VHDL语言编写的时序逻辑程序实现50选1或10的信号输出。
因为该系统是一个工业控制系统,程序控制是核心内容,控制输出的重要依据是位置量的比较和输出的对象。系统各个模块通过硬件支持,软件实现分工协作最终达到既定的控制目的。控制模式分集控、手动、点动,集控包含三种模式的共性。与集控相比,手动少了预制数据的存储,点动仅是按键不带自锁,及按键按下为启动,松开为停止,所以从集控程序介绍子模块间的配合情况,对各子模块的软件编程,也是基于完成这样的配合。
集控分为预置、选场、启/停三大块,预置流程图如图3所示。
图3 预置流图
在预置过程中,通讯还有握手信号传递,并加有重发机制,保证信息交流成功。从图中可看出,预置仅在两个模块中完成。
场次预置好后,进入吊杆运行准备状态,应首先选定场次,主机从存储器中调出该场信息,包括该场杆数、有那些吊杆、对应吊杆的实际位置、预制位置和各吊杆将运行的方向,通知需要配合的模块完成准备工作。负责数据显示的吊杆监控判断模块,收到数据后,就显示出当前吊杆的杆号、实际位置、预制位置,并等待启动信号后开始上计数或下计数;信号分配模块收到选路信息后,把选中吊杆的传感信号,放到对应监控模块上。启动或停止键按下后,主机通过群发指令,各模块执行各自功能,流程如图4所示。
图4 选场确认流图
吊杆运行位置的确定是靠脉冲计数间接计算得出,编码器根据吊杆行程产生相应数量的脉冲,所以脉冲的个数,再加上行走方向信息,可判断出吊杆行程[3,4]。
脉冲计数程序由计数器T0中断进入,在中断程序中,除了做计数外,还通过实时比较实际值和预置值,判断吊杆是否到达预置位置,做出是否通知主机对输出控制模块下达停止改吊杆运行的命令。计数脉冲中断流程图如图5所示。程序根据光电码盘脉冲个数和吊杆当前运行方向计算当前吊杆的运行位置。步进电机实现一次(一个齿部)分度。由于在n的取值范围中,具有使表达式[(2×360°)÷(A°/N)]÷n存在余数的值。如果不对余数进行科学处理,那么在最后一个分度位和第一个分度位之间必然产生累积误差,从而影响分度精度。因此在输出分度脉冲的编程设计中,每进行一次分度,将余数累加一次;在下一个分度之前,先将累加值与拨码开关设定值n进行比较,当累加值大于n时,将累加值减去n,同时将输出脉数加一后再进行输出分度;若累加值小于n值,Y0输出原有脉冲个数进行分度,同时仍将余数累加一次。以此使均匀分度中任意相邻两分度位的误差小于步进电机的一个步距角,如果希望分度的精度较高,可以选用步距角较小的步进电机。
PLC通用数据寄存器D1、D0中,读入拨码开关设定分度位数n;将整体需输出的脉冲总数(2×360°)÷(A°/N)值,存入通用数据寄存器D11、D10中;利用PLC的功能指令FNC23(除法指令(D)DIV)进行除法运算。如图6所示,其商送到通用数据寄存器D5、D4,余数送到通用数据寄存器D7、D6。余数的累加单元使用通用数据寄存器D9、D8,它在开始分度之前处于清零的状态。
此单齿感应淬火自动控制技术,运用于风力发电装置中的回转支撑零件内、外齿轮单齿感应淬火中,通过对现场生产产品进行检验,完全满足生产要求,大大提高了产品质量,使用效果良好。
[1] 王兆义.可编程序控制器教程[M].北京:机械工业出版社,1995.
[2] 金仁贵.PLC原理与应用[M].合肥:合肥工业大学出版社,2009.
[3] 三菱公司.微型可编程控制器编程手册[Z].日本:三菱公司,2002.