基于单片机的绞车伺服系统的实现--控制网



基于单片机的绞车伺服系统的实现
企业:控制网 日期:2009-05-18
领域:工业安全 点击数:1378







程通
 (1981-)

男,汉族,河南省许昌人,本科,主要从事自动化设计方面的工作。

摘要:文章简单介绍了原有抽油机操作系统,在原有绞车控制系统的基础上进行了伺服系统的设计,并进行了相应的硬件选型和软件编程方面的设计工作,最终实现了计算机绞车伺服系统的仿真模拟,取得较好的实验效果,证明了该设计的可行性和有效性。

关键词:绞车;步进电机;伺服系统

Abstract: The paper introduces briefly the operation system of the oil pumping machine.
 The design of servo system is based on the original winch servo system, and hardware 
design and software development are also finished. Finally, we give the computer simulation 
result of the winch servo system, which demonstrates the effectiveness and availability of
 this system.

Key words: winch; stepper motor; servo system

    石油作为不可缺少的能源在国民经济发展中起着很大的作用,直接影响到经济的快速发展与否,因此石油行业得到迅速的发展,改进生产工具也成了不可避免的发展趋势。由于国内传统的抽油机大多是人工的机械式抽油机,影响到抽油机的工作效率,而且工人的作业强度极大,使得原油的生产成本较高。因此绞车控制系统的进一步自动化,具有非常巨大的潜在市场价值,其开发也是必然趋势。

1 设计方案

    本绞车的动力是由一台柴油发动机提供,传动轴经离合器与滚筒相连,滚筒上绕有钢缆连接活塞对油井进行作业。滚筒上装有制动机构(刹把),制动机构的动力是由一个气缸提供,气缸阀门的开度有一个手柄控制。工人可以直接通过手柄来控制气缸阀门开度,从而达到对钢缆下降速度的控制。自动装置可以在脱离控制手柄的情况下,实时自动调整手柄位置来实现对钢缆下降速度的控制。

    本设计中一条最根本的原则,是自动控制不影响手动控制的一切动作,手动控制在任何情况下享有优先权。整体系统设计方案分为三部分:键盘显示部分,通信部分(包括测量信号的接收和两片单片机之间的通信),控制部分。其整体系统框图如图1所示。

                                图1   整体系统框图

    当绞车自动运行时,控制系统根据实时情况,钢缆张力、下放(上升)速度等参数,选用不同的控制方式对绞车进行控制。控制的方式包括调节制动力矩的气缸气压控制模式和调节发动机输出力矩的油门开度控制模式。绞车自动控制功能的实现主要就是根据绞车工作的方式对以上两种控制方式适当组合和合理控制。

    软件主要由系统初始化模块、自检模块、主控制模块、信号监测、制动手柄中断服务程序模块等几大部分组成,系统控制流程图如图2所示。

    系统初始化模块在单片机上电复位时对系统进行初始化。初始化内容包括单片机内部的时钟、各端口设置、存储器配置、通讯接口、模拟和数字通道、看门狗定时器、系统变量等,以保证单片机正常运行。另外还包括对系统的执行机构进行复位,确保绞车的安全运行。

    自检模块是在系统初始化后对关键软、硬件部分进行静态检测,以判断系统的软、硬件工作是否正常。包括RAM自检以及通信链路的建立等。如果发现控制系统中存在故障,故障警示灯会尖端点亮报警。

    主控制模块为控制系统的控制主程序,位于图2的虚线框内。主控制模块首先调用参数监测模块(包含RS485通信模块和UART通信模块和数据处理模块),监测绞车设备参数和运行参数,然后判断绞车的工作状态。若处于停机或手动状态,则循环调用监测模块对绞车参数实时监控,并将系统状态及参数通过UART传送至事务处理单片机进行操作(显示、存储、打印等操作);若进入自动运行状态,则通过定时器中断T1做固定周期100ms(暂定)的循环,连续调用参数监测模块、制动参数控制模块、油门参数控制模块,实时进行绞车运动状态的判断。

    正常情况下,在循环调用以上模块时,依据绞车当前的运行状态,由控制执行模块分别进行制动气缸气压和发动机油门开度的模拟量控制(4-20mA)。系统自动运行过程中,若监测参数由超限情况,执行报警2程序。 

    为了适应驾驶员制动动作与控制器制动控制之间紧急切换需要,设计了按键紧急制动中断服务程序(手柄操作时控制器控制权终止)。当收到紧急制动按键触发的中断时,进入按键紧急制动中断服务程序,如果绞车处于钢缆下放/上升方式,立即执行报警1程序。

                                图2   系统控制流程图

    本次设计具体模拟方案选定:错误!未找到引用源。 单环(内环)模拟在单片机内设好一个电压给定值,将其与反馈电压值比较,通过数字PID调节后送给步进电机控制信号,使其转轴上连接的电位器输出一个电压值;错误!未找到引用源。 在模拟外环(速度环)时在现有的条件下没有找到合适的方法进行模拟,现在准备了两种方法进行模拟。第一种是,在程序中作一组数据当作外环的反馈量进行调解,观察现象是否符合理论。这一种方法的难处在于给定数据的选取(包括数据的数量和规律)。第二种是,人工旋转另外一个电位器来当作速度环的反馈,观察现象是否符合理论。这种方法的缺点是在人工提供的反馈量变化的速度慢,并且与真正的反馈量缺乏相关性,很难进行参数调整和计算。在此次设计中进行模拟时并没有把主环完整的加上,而是在副环调好的基础上,然后人手动一个电位器给一个主环反馈信号。这种做法不是很合理,但能够大概看出程序运行的情况。其具体情况下文中能清楚地看到。

2 控制算法选取

    该系统是用数字PID控制,其中压力环(内环)采用增量式数字PID控制,外环采用位置式数字PID控制,两个环形成串级控制。绞车控制系统原理图如图3所示。 

                                图3   绞车控制系统原理图

    系统给定是一个速度值,其范围是0~5m/s,主环的反馈是速度主调节器(PID1)的输出是气缸气压的范围。副环是一个气压环,其实际上所调节的是手柄位置,副调节器(PID2)的输出直接对步进电机的角度进行调整(根据手柄位置的差值可以确定给步进电机的脉冲数)。本设计中把步进电机做成了闭环控制,作为一个定位工具,主要是实现对操作手柄的位置控制,这是本设计的特点。步进电机的不同角度对应着操作手柄的不同位置,而手柄位置又通过一个机构对应着气缸阀门的开度(是一种线性关系)。步进电动机的位置是带记忆的,而且手柄和气缸阀门开度是一种线性对应关系,气缸压力又和阀门开度是线性关系,气缸压力决定着对滚筒抱闸力的大小且呈线性系。因此对步进电动机进行调节的副环PID调节器应选用增量式控制。

3 硬件连接方案

    副环的系统硬件接线示意图如图4所示,它能很好的反应控制算法和程序编写的正确性和合理性。

                                图4   系统连接示意图

    PC机和目标板的连接是通过一个适配器,这样可以实现在线调试,便于检查程序和修改程序。所用的开发软件就是keil 公司的μVision2。在步进电动机驱动器和目标板之间加一个光电隔离,是为了保护控制电路和抑制驱动器对控制电路的干扰。通过驱动器可以确定步进电动机的工作状态并使步进电动机按照预设的状态运动。旋转电位器是通过连接轴和支架与步进电机的转轴相连的,旋转电位器和步进电动机并没有电气连接。因为电机对线路的干扰太大,在电位器输出电压信号反馈回单片机时要经过一个低通滤波电路(经过实际验证)。

    按照上面的连接方法,将会对旋转电位器输出电压进行控制。反馈的电压量可以将之看成是速度量(若使用简单控制的话),也可以将之看成是一个压力信号作为副环的模拟。其实这种模拟方法更适合于副环,因为速度信号时时变化且需要调节器不断的调节(它任何时候都有要变化的趋势),而压力信号则是一个调整后相对稳定的量。这一点正好与上面的电位器反馈的系统有所相似,只是步进电动机要实现的不是对气缸气压的调节而是对电位器输出电压的控制。模拟系统中需要一个24V/3A的开关稳压电源和一个5V/0.5A的开关稳压电源,其中24V的电源给步进电动机供电,5V的电源给光藕和步进电动机驱动供电。系统中的接地也是有讲究的,光藕的发光侧与目标板共地,光藕的输出侧与驱动器共地,步进电动机单独供电。

4 系统软件实现

    系统软件开发环境采用Keil ?Vsion 2.0,Keil IDE(μVision2) 集成开发环境是Keil Software Inc/Keil Elektronik GmbH 开发的基于80C51内核的微处理器软件开发平台,内嵌多种符合当前工业标准的开发工具。可以完成从工程建立和管理,编译,连接目标代码的生成,软件仿真,硬件仿真等完整的开发流程。μVision2 软件调试器能够进行快速、可靠的程序调试。调试器包括一个高速模拟器,可以使用它模拟整个80C51 系统,包括片上外围器件和外部硬件。当您从器件数据库选择器件时,这个器件的属性会被自动配置。首先可以介绍一下模拟系统副环调节程序的整体流程简图如图5所示,是先编的副环程序,然后才加上主环的程序,这样做是符合串级控制的设计方法。

5 试验结果

    按照上面的硬件连线和软件设计所做的模拟控制效果可以通过下面的数据反映出来。

                               表1   调节误差表

    由表1可知系统的稳态误差值非常小,可以满足应用要求。另外可以确定在稳定值上步进电动机是静止的,不会出现连续晃动,避免了因步进电机连续晃动对机械部分造成损伤。在上表中的PID参数下,调试时根据粗略的测量可以知道调节时间一般在1至2秒之间,并且是几乎没有超调量的。

    在进行双环调试时,所选用的方法是用手动赋予外环一个反馈值。理论上分析,若是外环的反馈值大于给定值,那么步进电动机上的电位器应输出最小值即0V;若是外环的反馈值小于给定值,那么步进电动机上的电位器应输出最大值2V。经过实验验证,所做模拟系统完全符合理论上的分析。

6 结束语

    石油行业的迅速发展决定了石油设备自动化的迫切需求。本设计在原有绞车系统的基础上进一步改进,实现了系统的自动控制,有利于抽油机生产效率的提高,减少操作人员的劳动强度,进一步降低生产成本。因此必将为绞车控制系统的进一步自动化提供有益的借鉴,也会给绞车控制系统方面的设计人员提供一点启示。

参考文献

[1] 马忠梅,籍顺心,张凯等.单片机的C语言应用程序设计[M].北京:北京航空航天大学出版社,2003.11.

[2] 王晓明.电动机的单片机控制[M].北京:北京航空航天大学出版社,2003.11.

[3] 王锦标.计算机控制系统[M].清华大学出版社,2004.3.

[4] 陈大林,任祖平.基于单片机的步进电机运行控制系统设计[J].伺服控制技术,2005,(11):54-56.

[5] 李军生.基于C504单片机的步进电机闭环控制系统[J].宝鸡文理学院学报(自然科学版),2001,(4):301-303.

[6] 邓之鹏.步进电机单步运行仿真研究[J].太原重型机械学院学报,1994,(1):71-78.
  • 在线反馈
1.我有以下需求:



2.详细的需求:
姓名:
单位:
电话:
邮件: