• 无刷直流电机控制器MC33035的原理及应用

     摘要:MC33035是美国安森美公司开发的高性能第二代单元无刷直流电机控制器,它包含开环三相或四相电机控制所需的全部有效功能。该器件由具有良好整流序列的转子位置译码器、可提供传感器功率的温度补偿参考、频率可编程的锯齿波振荡器、完全可访问的误差放大器以及三个非常适用于驱动大功率MOSFET的大电流推挽底部驱动器组成,因而是一种功能齐全的电机控制器。文中介绍了MC33035的特点功能和工作原理,给出了由它组成的三相六步全波电机控制和H型电机有刷控制等两种电机控制电路。     关键词:无刷 直流电机 控制 MC33035 1 概述 MC33035无刷直流电机控制器采用双极性模拟工艺制造,可在任何恶劣的工业环境条件下保证高品质和高稳定性。该控制器内含可用于正确整流时序的转子位置译码器,以及可对传感器的温度进行补偿的参考电平,同时它还具有一个频率可编程的锯齿波振荡器、一个误差信号放大器、一个脉冲调制器比较器、三个集电极开路顶端驱动输出和三个非常适用于驱动功率场效应管(MOSFET)的大电流图腾柱式底部输出器。此外,MC33035还有欠锁定功能,同时带有可选时间延迟锁存关断模式的逐周限流特性以及内部热关断等特性。其典型的电机控制功能包括开环速度、正向或反向、以及运行使能等。 2 管脚排列及功能定义 MC33035的管脚排列如图1所示,各引脚功能定义见表1。表1 MC33035的管脚功能定义定 管脚编号 符    号 功能定义 1,2,24 BT,AT,CT 三个集电极开路顶端驱动输出,用于驱动外部上端功率开关晶体管 3 Fwd/Rev 正向/反向输入,用于改变电机转向 4,5,6 SA,SB,SC 三个传感器输入,用于控制整流序列 7 Ooutput Enable 输出使能,高电平有效。该脚为高电平时,可使电机转动 8 Reference Output 此输出为振荡器定时电容CT提供充电电流,并为误差放大器提供参考电压,也可以向传感器提供电源 9 Current Sense Noninverting Input 电流检测同向输入。在一个给定的振荡器周期中,一个相对于管脚15为100mV的信号可中止输出开关导通。通常此管脚连接到电流检测的上端 10 Oscillator 振荡器引脚,振荡频率由定时元件RT和CT所选择的参数值决定 11 Error Amp Noninverting Input 误差信号放大器同向输入。通常连接到速度设置电位器上 12 Error Amp Noninverting Input 误差信号放大器反向输入。在开环应用情况下,此输入通常连接到误差放大器输出端 13 Error Amp Out/PWM Input 误差放大器输出/PWM输入。在闭环应用情况下,此管脚用作补偿 14 Fault Output 故障输出端。当下列的任一或多个条件满足时,集电极开路输出端被触发而变为低;无效的传感器输入码,电流检测超过100mV,低电压锁定或热关断 15 Current Sense Inverting Input 电流检测反向输入端。用于给内部100mV门限电压提供参考地,该管脚通常连接到电流检测电阻的底端 16 Gnd 该管脚用于为控制电路提供一个分离的接地点,并可以作为参考返回到电源地 17 Vcc 正电源。Vcc在10V~30V的范围内,控制器均可正常工作 18 Vc 底部驱动输出的高端电压是由该管脚提供的,它的工作范围从10V~30V 19,20,21 CB,BB,AB 这三个图腾柱式底部驱动输出被设计用于直接驱动外部底部功率开关晶体管 22 60°/120°Select 此管脚的电气状态可决定控制电路是工作在60°(高电平状态)还是120°(低电平状态)的传感器电气相位输入状态下 23 Brake 输出使能。该管脚为低时允许马达运行,为高时马达运行停止 表2 三相六步换向器真值表 输      入 输    出 60度SA  SB  SC 120度SA  SB  SC 正向/反向 使能 电流检测 顶部驱协AT  BT  CT 底部驱动AB  BB  CB  1   0   0  1   0   0  1       1       0  0   1   1  0   0   1  1   1   0  1   1   0  1       1       0  1   0   1  0   0   1  1   1   1  0   1   0  1       1       0  1   0   1  1   0   0  0   1   1  0   1   1  1       1       0  1   1   0  1   0   0  0   0   1  0   0   1  1       1       0  1   1   0  0   1   0  0   0   0  1   0   1  1       1       0  0   1   1  0   1   0  1   0   0  1   0   0  0       1       0  1   1   0  1   0   0  1   1   0  1   1   0  0       1       0  1   1   0  0   1   0  1   1   1  0   1   0  0       1       0  0   1   1  0   1   0  0   1   1  0   1   1  0       1       0  0   1   1  0   0   1  0   0   1  0   0   1  0       1       0  1   0   1  0   0   1  0   0   0  1   0   1  0       1       0  1   0   1  1   0   0  1   0   1  1   1   1  X       X       X  1   1   1  0   0   0  0   1   0  0   0   0  X       X       X  1   1   1  0   0   0  V   V   V  V   V   V  X       0       X  1   1   1  0   0   0  V   V   V  V   V   V  X       1       X  1   1   1  0   0   0 表中,V表示六个有效传感器或驱动组合中的一个,X表示无关;输入逻辑0定义为小于85mV,逻辑1为于115mV 3 工作原理 MC33035的内部结构框图如图2所示。图2 MC33035的内部结构框图    MC33035内部的转子位置译码器主要用于监控三个传感器输入,以便系统能够正确提供高端和低端驱动输入的正确时序。传感器输入可直接与集电极开路型霍尔效应开关或者光电耦合器相连接。此外,该电路还内含上拉电阻,其输入与门限典型值为2.2V的TTL电平兼容。用MC33035系列产品控制的三相电机可在最常见的四种传感器相位下工作。MC33035所提供的60度/120度选择可使MC33035很方便地控制具有60度、120度、240度或300度的传感器相位电机。其三个传感器输入有八种可能的输入编码组合,其中六种是有效的转子位置,另外两种编码组合无效。通过六个有效输入编码可使译码器在使用60度电气相位的窗口内分辨出电机转子的位置。表2所列是其真值表。 MC33035直流无刷电机控制器的正向/反向输出可通过翻转定子绕组上的电压来改变电机转向。当输入状态改变时,指定的传感器输入编码将从高电平变为低电平,从而改变整流时序,以使电机改变旋转方向。 电机通/断控制可由输出使能来实现,当该管脚开路时,连接到正电源的内置上拉电阻将会启动顶部和底部驱动输出时序。而当该脚接地时,顶端驱动输出将关闭,并将底部驱动强制为低,从而使电动机停转。 MC33035中的误差放大器、振荡器、脉冲宽度调制、电流限制电路、片内电压参考、欠压锁定电路、驱动输出电路以及热关断等电路的工作原理及操作方法与其它同类芯片的方法基本类似,这里不多述。图3 三相六步全波电机控制电路4 实际控制电路 4.1 三相六步电机控制电路 图3所示的三相应用电路是具有全波六步驱动的一个开环电机控制器的电路连接图。其中的功率开关三极管为达林顿PNP型,下部的功率开关三极管为N沟道功率MOSFET。由于每个器件均含有一个寄生箝位二极管,因而可以将定子电感能量返回的电源。其输出能驱动三角型连接或星型连接的定子,如果使用分离电源,也能驱动中线接地的Y型连接。 在任意给定的转子位置,图3所示的电路中都仅有一个顶部和底部功率开关(属于不同的图腾柱)有效。因此,通过合理配置可使定子绕组的两端从电源切换到地,并可使电流为双向或全波。由于前沿尖峰通常在电流波形中出现,并会导致限流错误。因此,可通过在电流检测输入处串联一个RC滤波器来抑制类峰。同时,Rs采用低感型电阻也有助于减小尖峰。 4.2 有刷电机控制电路 虽然MC33035是专为控制无刷直流电机而设计的,但它也可以用来控制直流有刷型电机。图4所示就是一个使用MC33035来控制直流有刷型电机的典型应用电路实例。 图4中,MC33035通过驱动一个H型电四桥可用最少的器件来控制一个有刷电机。该控制的关键在于:要将输入传感器编码为100,同时,在控制器正向/反向管脚为逻辑电平1时,还应产生一个顶部到左Q1和底部到右Q3的驱动信号,而当正向/反向管脚的逻辑电平为时,则应产生顶部到右Q4和底部到左Q2的驱动。该编码可以保证H型驱动同时满足方向和速度控制的要求。该控制器可在大约25kHz的脉宽调制频率下正常工作。电机速度的控制可通过调节误差放大器同相输入端的电压来输入。而电机电流的逐周限流则可由检测H型电桥电机电流并通过电阻Rs到地之间所产生的电压(100mV门限)来实现。由于利用过流检测电路可改变电机转向,因此,在工作时,使用正常的正向/反向切换不需要在变向前完全停止。图4 H型电机有刷型控制器电路    4.3 布线注意事项 在布线时,不要在绕接或插入式样机板上构建任何电机控制电路,采用高频印制电路布线对防止脉冲抖动极为重要。通常由于在电流检测传感器或误差信号放大器输入端有过量噪声。因此,印制电路布局应该具有一个小电流信号和高驱动输出缓冲地的接地面,并应通过分开的通路返回到电源输入滤波器电容上。在VCC、Vref和误差放大器同向输入端,是否需要在靠近集成电路的地方接一个瓷介电容(0.01μF),可视电路布局而定。但所有的大电流回路都应尽可能短,并应尽量使用粗铜线走线以降低EMI辐射。

    工业控制 33035 mc 无刷直流 电机控制器

  • isp1016实现机载导航系统的键盘控制

    摘要:介绍了用isp可编程逻辑芯片设计机载导航系统键盘控制器的设计要点,给出了接口信号及驱动程序的核心代码。该设计具有典型性、通用性和实用性,并可用到各种键盘控制器中。     关键词:键盘控制器 在线可编程 扫描线 isp1016 1 键盘控制器的外部接口信号 无论在任何计算机系统中,键盘都是最重要的输入设备,但是普通键盘不能满足机载要求。笔者在新一代电子航空图导航系统中,用Lattice公司的ispLSI1016设计了一个4×5键盘控制器(以下简称KBC),经实际应用,该键盘控制器通用性较强。图1是其键盘和显示器外观示意图。    一航情况下,KBC应该是CPU的一个外部I/O设备,它一方面监测各按钮状态,另一方面接受CPU的查询并主动向CPU请求中断。因此,外部接口信号分CPU接口信号和键盘按钮矩阵状态信号。图2为通用KBC外部接口信号示意图,其定义如下: *Reset:复位,低有效。该信号有效时将异步复位内部所有寄存器,以对KBC进行初始化; *CLK:工作时钟,频率为100kHz; *CS:片选,低有效; *RD:读信号,低有效; *A0:片内地址,用于区分片内寄存器; *INT:中断请求,高有效。当键盘控制器检测到有效按键时,该脚为高,当CPU读走按键编码时,KBC自动撤销中断请求; *D4~D0:三态数据线; *SL3~SL0:扫描输出,按键盘矩阵的列线; *RL4~RL0:回复线,接键盘矩阵的行线。 实际上,大部分矩阵键盘的行列是可对换的。 2 KBC接口寄存器定义及驱动程序 KBC针对CPU接口设计有2个只读寄存器,即数据寄存器(Dreg)和状态寄存器(Sreg)。数据寄存器用于保持有效按键的编码值,该编码值就是按键所在的行列;而状态寄存器则用于保持按键的状态信息,以供CPU查询。当CPU访问KBC时(即CS和RD同时有效),adk A0=0,则访问数据寄存器,否则访问状态寄存器。表1、表2分别是数据寄存器和状态寄存器的定义。表1 数据寄存器定义 D7 D6 D5 D4 D3 D2 D1 D0 X X X Col(列值) Row(行值) 表2 状态寄存器定义 D7 D6 D5 D4 D3 D2 D1 D0 X X X 0 0 0 0   显然,KBC的编程可以有2种模式,一种是软件查询,另一种是中断驱动。由于本系统采用WindowNT为运行环境,KBC对应用程序透明,所以,将INT请求直接和CPU的某一空闲中断(IRQ9)相连接,以便使驱动程序能将KBC作为一个设备打开。在初始化加载时,应将对应中断触发设置为电平敏感。其VC核心代码如下: #define SReg 0x401 //键盘状态寄存器地址 #define DReg 0x400 //键盘数据寄存器地址 … BYTE SR,Key,Row,Col; … SR=inp(SReg)&0x1f; //读数据寄存器,低6位有效 Col=Key>>3; //右移3位,提取按键列值 Row=Key & 0x07;//提取按键行值 } 至此,就可根据Row和Col的值将它翻译为某一标准键,并存入NT键盘缓冲区。 3 KBC内部逻辑设计 内部控制逻辑设计的关键是掌握按键识别原理。图3所示是其键盘识别原理图。设计时,可将按键设置在行线、列线的交点上。行线通过上拉电阻接到VCC(+5V),无按键时处于高电平。有按键时行线电平状态由列线决定。所有列线均为高则行线高,任一列线为低则行线低。KBC处理的核心就在于确认某一行线为低时,能定位出对应的列线。 3.1 输出扫描线(SL3..SL0) 在设计输出扫描线时,可以使用一个2-Bit状态机Q5[L1..0]来依次轮流使扫描线输出为低电平。驱动时钟的周期为640ms,亦即每即扫描线持续640ms的低电平。将状态机的状态编码值和当前周期为低电平的扫描线序号对应起来,即可简化后续处理。图4是扫描线输出波形。注意,无论何种按键组合,在任一状态,有且仅有一个扫描线为低电平,否则后续处理将无法正确识别。    3.2 键盘编码 处理回复线(RL4..RL0)时,应该对其中为低电平的行线进行编码。5个行线需要3-Bit寄存器,记为[RQ5..RQ0],其真值表如下: [RL4..RL0] ->[RQ2..0] ---------------- [H,H,H,H,L] ->[0,0,0];0 [H,H,H,L,H] ->[0,0,1];1 [H,H,L,H,H] ->[0,1,0];2 [H,L,H,H,H] ->[0,1,1];3 [L,H,H,H,H] ->[1,0,0];4 当KBC确认是有效按键后,应把行列编码值放入缓冲,以供CPU读取,其逻辑表达如下: 式中,[KSL1,KSL0]是记录有效按键的扫描线编码,即当时的[QSL1..0]状态。 3.3 CPU的读操作 CPU读状态寄存器时,系统把中断请求寄存器INT的值送出,而读数据寄存器时,它将把FIFO缓冲的按键值送出,处理CPU读操作的表达式如下: [D4..D0].oe=!CS & !RD; //寄存器由三态控制 [D4..D0]=(!A0 & [FIFO4..FIFO0])# //A0=0:送按键数据 (A0 & [L,L,L,L,INT]); //A0=1;送状态 INT.ar=!Reset #(!CS&!RD & !A0);//读数据寄存器时应撤销中断 3.4 键盘处理状态机 该状态处理机是KBC处理的核心。图5是其状态转移图,其驱动时钟应该比扫描周期快而且应该是它的整数倍。此处采用的80ms时钟周期是扫描周期的8倍。下面讨论其状态转移条件。    S0:复位状态 1.记录当前扫描周期 2.if若有低电平的回复线then S1 else S0; S1: 1. 启动延时(去抖)计数器,延时10.24ms 2. 无条件进入下一状态S2 S2:去抖状态 if去抖正确then S3 else S0 S3:确认状态 1. 将有效键值打入FIFO缓冲 2. 设置 4 改进建议 上述KBC完全可以满足一般系统对键盘的要求,但仍然可以改进以使之更加智能化。例如使CPU能够对KBC的读操作和写入控制字进行适当控制、使KBC可处理组合按键和按键连击、增加KBC多字节的缓冲等。上述功能完全可以根据设计者系统和应用程序的要求进行改进。本设计源代码使用的是ABLE硬件描述语言,对此感兴趣的同志可以和作者进行联系。

    工业控制 导航系统 isp 机载 1016

  • 单总线(1-Wire Bus)技术及其应用

     摘要:介绍了美DALLAS公司推出的单总线技术的原理和信号传输方式,说明了单总线通信协议,最后以单总线器件iButton在安防系统中的应用为例,给出了单总线的数据传输方法。     关键词:单总线 单总线协议 iButton 1 引言 目前常用的微机与外设之间进行数据传输的串行总线主要有I2C总线、SPI总线和SCI总线。其中I2C总线以同步串行2线方式进行通信(一条时钟线,一条数据线),SPI总线则以同步串行3线方式进行通信(一条时钟线,一条数据输入线,一条数据输出线),而SCI总线是以异步方式进行通信(一条数据输入线,一条数据输出线)的。这些总线至少需要两条或两条以上的信号线。近年来,美国的达拉斯半导体公司(DALLAS SEMICONDUCTOR)推出了一项特有的单总线(1-Wire Bus)技术。该技术与上述总线不同,它采用单根信号线,既可传输时钟,又能传输数据,而且数据传输是双向的,因而这种单总线技术具有线路简单,硬件开销少,成本低廉,便于总线扩展和维护等优点。 单总线适用于单主机系统,能够控制一个或多个从机设备。主机可以是微控制器,从机可以是单总线器件,它们之间的数据交换只通过一条信号线。当只有一个从机设备时,系统可按单节点系统操作;当有多个从设备时,系统则按多节点系统操作。图1所示是单总线多节点系统的示意图。2 单总线的工作原理 顾名思义,单总线即只有一根数据线,系统中的数据交换、控制都由这根线完成。设备(主机或从机)通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据时能够释放总线,而让其它设备使用总线,其内部等效电路如图2所示。单总线通常要求外接一个约为4.7kΩ的上拉电阻,这样,当总线闲置时,其状态为高电平。主机和从机之间的通信可通过3个步骤完成,分别为初始化1-wire器件、识别1-wire器件和交换数据。由于它们是主从结构,只有主机呼叫从机时,从机才能应答,因此主机访问1-wire器件都必须严格遵循单总线命令序列,即初始化、ROM、命令功能命令。如果出现序列混乱,1-wire器件将不响应主机(搜索ROM命令,报警搜索命令除外)。表1是列为ΔΙΩ命令的说明,而功能命令则根据具体1-wire器件所支持的功能来确定。表1 ROM命令说明 ROM命令 说      明 搜索ROM(F0h) 识别单总线上所有的1-wire器件的ROM编码 读ROM(33h)(仅适合单节点) 直接读1-wire器件的序列号 匹配ROM(55h) 寻找与指定序列号相匹配的1-wire器件 跳跃ROM(CCh)(仅适合单节点) 使用该命令可直接访问总线上的从机设备 报警搜索ROM(Ech)(仅少数器件支持) 搜索有报警的从机设备 3 信号方式 所有的单总线器件都要遵循严格的通信协议,以保证数据的完整性。1-wire协议定义了复位脉冲、应答脉冲、写0、读0和读1时序等几种信号类型。所有的单总线命令序列(初始化,ROM命令,功能命令)都是由这些基本的信号类型组成的。在这些信号中,除了应答脉冲外,其它均由主机发出同步信号,并且发送的所有命令和数据都是字节的低位在前。图3是这些信号的时序图。其中,图3(a)是初始化时序,初始化时序包括主机发出的复位脉冲和从机发出的应答脉冲。主机通过拉低单总线至少480μs产生Tx复位脉冲;然后由主机释放总线,并进入Rx接收模式。主机释放总线时,会产生一由低电平跳变为高电平的上升沿,单总线器件检测到该上升沿后,延时15~60μs,接着单总线器件通过拉低总线60~240μsμ来产生应答脉冲。主机接收到从机的以应答脉冲后,说明有单总线器件在线,然后主机就可以开始对从机进行ROM命令和功能命令操作。图3中的(b)、(c)、(d)分别是写1、写0和读时序。在每一个时序中,总线只能传输一位数据。所有的读、写时序至少需要60μs,且每两个独立的时序之间至少需要1μs的恢复时间。图中,读、写时序均始于主机拉低总线。在写时序中,主机将在拉低总线15μs之内释放总线,并向单总线器件写1;若主机拉低总线后能保持至少60μs的低电平,则向单总线器件写0。单总线器件仅在主机发出读时序时才向主机传输数据,所以,当主机向单总线器件发出读数据命令后,必须马上产生读时序,以便单总线器件能传输数据。在主机发出读时序之后,单总线器件才开始在总线上发送0或1。若单总线器件发送1,则总线保持高电平,若发送0,则拉低总线。由于单总线器件发送数据后可保持15μs有效时间,因此,主机在读时序期间必须释放总线,且须在15μs的采样总线状态,以便接收从机发送的数据。图3 单总线的几种信号时序4 单总线器件 通常把挂在单总线上的器件称之为单总线器件,单总线器件内一般都具有控制、收*发、存储等电路。为了区分不同的单总线器件,厂家生产单总线器件时都要刻录一个64位的二进制ROM代码,以标志其ID号。目前,单总线器件主要有数字温度传感器(如DS18B20)、A/D转换器(如DS2450)、门标、身份识别器(如DS1990A)、单总线控制器(如DS1WM)等。这里介绍一种iButton形式的单总线器件,它是利用瞬间接触来进行数字通信的,这些器件的应用已经渗透到货币交易和高度安全的认证系统之中。IButton是采用纽扣状不锈钢外壳封装的微型计算机晶片,它具有抗撞击、防水渍、耐腐蚀、抗磁扰、防折叠、价格便宜等特点,能较好的解决传统识别器存在的不足,同时又可满足系统在可靠性、稳定性方面的要求。 IButton主要有三种类型,分别是Memory iButton(存储器);Java-powered cryptographic iButton(加密型);Thermochron iButton(温度型)。存储型iButton最大存储空间为64kB,可以存储文本或数字照片。加密型iButton是一种微处理器和高速算法加速器,可以产生大量需要加密和解密的数据信息,它的运行速度非常快,可与Internet应用相结合,并可应用于远程鉴定识别。温度型iButton可以测量温度变化,它内含温度计、时钟、热记录和存储单元等。图4 安防系统硬件原理图5 单总线器件的应用 现以单总线器件iButton在安防系统上的应用为例来进行说明,该安防系统就是利用iButton来进行门禁识别的。其门禁识别部分的硬件原理图如图4所示,它由主机微控制器、从机(包括iButton信息读取头和iButton)、主机通过RS485进行远程通信(或通过MicroWeb连上Internet)等三部分组成。微控制器采用Microchip公司的PIC16F873芯片,而API8108A语音芯片则用来告诉用户系统信息;iButton采用DS1990A,信息读取头被读取并同时送到主机微控制器,然后由主机把收到的标识码与原先存储的iButton标识码进行比较判断,若吻合,则系统按设定要求程序工作,否则,系统给出语音提示。DS1990A与主机微控制器之间的通信软件设计流程图如图5所示。 通常主机与单总线器件的通信都是通过初始化、写0、写1、读0、读1时序来的完成的,下面给出用汇编语言编写的子程序,需要说明的是,这些程序虽然是针对iButton所写的,但适用于所有的单总线器件,且简单易懂,现予给出,以供大家参考。 RESET BSF RB2 ;主机拉低总线 CALL DELAY_500us ;给500μs复位脉冲 BCF RB2 ;释放总线 CALL DELAY_200us BTFSC BR1 ;检测iButton返回应答脉冲否 GOTO RESET ;否,再给它复位脉冲 CALL DELAY_500us ;是,返回 RETURN WRITE_0 BSF RB2 ;对iButton写0时序子程序 CALL DELAY_10us CALL DELAY_60us BCF RB2 CALL DELAY_10us RETURN WRITE_1 BSF RB2 ;对iButton写1时序子程序 CALL DELAY_10us BCF RB2 CALL DELAY_60us RETURN READ_TIME BSF RB2 ;对iButton读数据时序 NOP NOP NOP BCF RB2 CALL DELAY_10us RETURN 6 总结 单总线技术以其线路简单、硬件开销少、成本低廉、软件设计简单优势而有着无可比拟的应用前景。基于单总线的iButton技术能较好地解决传统识别器普遍存在的携带不便、易损坏、易受腐馈、易受电磁干扰等不足,可应用于高度安全的门禁、身份识别等领域。其通信可靠简单,很容易实现。因此单总线技术有着广阔的应用前景,是值得产注的一个发展领域。

    工业控制 wire bus 单总线

  • 小功率工业遥控器的研制

    作者Email: 13093740819@zj165.com     摘要:介绍一种应用在工业现场的具有高可靠性的无线遥控器的研制开发。遥控器有手持发送器与被控接收器两部分组成。被控接收器接收遥控器的信号,然后控制现场设备的运行。该遥控器是为了提高物流运输中电动葫芦以及行车的控制的安全性和方便性而开发的。经过改进也可用于其他设备的控制以及家庭使用,有较好的扩展性。     关键词:无线遥控,低功耗,HAC-UP数传模块,继电器—交流接触器     在一个公司的物流系统中,物体的搬运是一个大系统。而物体的搬运,一般都要用到电动葫芦以及行车这两种工具。由于电动葫芦与物品需要移动,操作人员必须拿着手持控制器随物品的移动而走动,而手持控制器也要拉着长长的一捆线,这样操作人员操作起来既不方便也很不安全。因此,一般公司及需要一种又安全、方便并且价格不是太昂贵的工业遥控器。从目前情况来看,国内外这方面的产品不是很多。在国外,主要有德国及台湾的几家公司在开发,但是他们的价格相对比较贵,一般都在3000元每套以上;而在国内只有江苏的江阴凯澄起重机械有限公司在做该类产品,并且该产品还有很多不完善的地方。基于这种情况,我们设计了这款遥控器,经过厂方的试用,反映较好,达到了很好的可靠性,在节能方面也做得不错,两节五号碱性电池能够工作一年以上,远远超过了国家标准     1.无线数传模块HAC—UP简介     在我们所做的这款工业遥控器中,我们直接采用了深圳华奥通信技术有限公司的无线数传模块HAC—UP24。该无线数传模块基于FSK的调制方法,采用高效前向纠错信道编码技术,在信道误码率为10-2时,可得到实际误码率为10-5-10-6。HAC—UP具有低功耗及休眠功能。接收情况下,电流<10mA,发射电流<30mA,休眠电流<10uA,故非常适合于电池供电的产品。经实际测试,我们所开发的这款遥控器产品性能优良。     2.系统硬件组成     此款小功率遥控器有两部分组成,其一是手持端发送器,另一是控制端接收器。手持端负责发送操作人员所发出的命令,控制端接收手持端的命令并执行相应的命令。     手持端采用电池供电,所以其功耗就显得十分重要,是整个遥控器手持端的灵魂所在。基于此种原因,我们从硬件和软件两个方面实现其低功耗的要求。从器件原则上,我们一律采用低功耗的CMOS芯片,单片机采用的是低功耗的,低电压供电的(3.6V),有完全掉电模式的,自带看门狗电路的,自带电压比较器的,自带键盘中断电路的飞利浦单片机P89LPC932,低功耗的无线数传模块HAC-UP24以及其他一些外围辅助电路。采用内部集成各种功能的飞利浦单片机P89LPC932可以减少电路板的面积,且有利于降低系统的功耗。 系统组成框图如下:   控制接收端与强电系统直接相挂接,因此各种干扰将会非常多,所以其可靠性与抗干扰性就显得十分重要,它是系统能够投入的基础。为此,我们从硬件、软件等方面下了大功夫。由于行车及电动葫芦的滑行,实际供电电源会出现瞬时断电的情况,故在电源引线上并联了了大容量的电容进行续电,实践证明,这一步非常重要。然后进行整流,滤波。由于工业现场的供电电源并不够理想,干扰情况比较严重,故又增加了DC-->DC变换器提高电源质量。由于系统的输出是驱动继电器—接触器系统,进一步控制电机的运行,因此必须进行弱电、强电系统隔离,我们采用日本惠普公司的光电耦合器TIP521-4。由于工业现场的干扰太大了,经常有脉冲干扰出现,因此不能采用使用下降沿锁存的一系列芯片,比较74LS244。实践证明,该类产品在使用时会出现错误。综合上面所述,我们的产品结构框图如下: 3.系统软件原理     手持端最重要的一点就是怎样实现系统的低功耗,故在软件上我人也采取了一系列措施。由于单片机P89LPC932是一种低功耗芯片,其典型的工作电流是10mA(4-12M晶振,3.6V工作电压),而其掉电电流仅只有1uA,因此非常适合于电池供电的系统。为了尽可能降低系统的功耗,我们采取了如下措施:系统上电后,初始化单片机P89LPC932各功能模块,之后休眠数传模块HAC—UP,矩阵键盘扫描口线清零,最后单片机P89LPC932进入掉电模式。当有键盘按下之后,键盘中断使单片机P89LPC932重新进入正常模式,然后读取键值,并唤醒数传模块HAC-UP发送数据,开启看门狗定时器,看门狗定时器中断后,查寻是否仍有按键,若有,则读键值并发送数据,若无按键,则发送无按键命令,并休眠数传模块HAC-UP和单片机P89LPC932进入完全掉电模式。经过这种功耗处理,使系统完全达到了我们的要求。程序流程图如下。   

    工业控制 工业 遥控器 小功率

  • PL2101在路灯控制系统中的应用

    摘要:新型直序扩频半双工异步调制解调顺PL2101具有功能多、抗干扰能力强等特点。利用它通过电力线载波应用系统可实现路灯的集约化及自动化管理和控制。文中介绍了用PL2101对路灯进行集约化自动控制设计的基本原理及软硬件实现方法,同时给出了其设计原理图和主、从控站的程序流程图。     关键词:电力线载波 路灯控制 PL2101芯片 通信协议 1 引言 为实现校园路灯控制的自动化,笔者应用PL2101芯片开发了基于电力线载波的路灯控制系统。该系统采用电力载波通信方式,它将所有的路灯连接到计算机上,并通过计算机监视所控区域内的路灯工作状态,可随时设定开关时间、路灯开启比例或单独革一个路灯的开与关。任一路路灯的工作电流和温度均可随时查询,路灯损坏时可实时报警,并可显示具体地理位置,以便于快速维修;当夜晚(或光线较暗)来临且处在交通高峰时,路灯全部开启,交通高峰期后,进入按比例开启,如午夜之后70%;在凌晨之前时段,路灯开启比例可以降到40%等,这样既兼顾了照明需要,又减少了电力浪费。2 系统工作原理 该系统由三个层次组成,分为总控站、主控站及从控站。总控站由PC机组成,可与主控站通过光缆或无线电连接,以实现对各个主控站的管理,并设定开关灯时间及执行开灯比例指令,同时对主控站返回的信息进行汇总,对有故障的路灯通过图文显示出来,以便准确确定其所在的位置。    主控站内部结构如图1所示。主控站通过光缆或无线方式来接收总控机的指令,并通过电力线载波的串行通信方式来对从控站进行监控。一个通信数据包由8字节数据组成,第一、二字节是主控标识,第三字节是命令,第四、五字节是从站地址,第六至第八字节为数据。从理论上讲,一个主控站最多可控制6万个从站。主控站采用广播方式发送命令数据,从机站收到通信包后进行数据分析,分析的内容:一是识别主机是否是自己的上级主控站,二是识别从机地址是否是自己的地址,只有在全部确认无误后,主控站才执行命令和相应的操作。    从控站的内部逻辑结构如图2所示,每个从控站可控制三组路灯,它通过电力载波接收电路来接收主控站的指令,并执行相应的操作,完成对工作电流的采样及处理,判断路灯是否工作正常,以便采取合理的保护措施;同时,它可以对现场工作温度进行采样处理,以便在温度超出正常工作范围时采取保护措施,同时将相关信息返送回主控站中。3 硬件设计 3.1 主要元件的选择与性能 PL2101是一个新型的直序扩频半双异步调制解调器,载频为120kHz,带宽为15kHz,传输速率为500bps,接收灵敏度高达30μV,另外,PL2101还具有上电复位、电压监测电路、看门狗定时器及可编程实时时钟等附属功能电路。该电路抗干扰能力强,灵敏度高,且与TTL电平兼容。此外,PL2101与MCS51系列单片机的接口非常简单,因而完全能够满足系统要求。    AT89C2051和89C55WD系列单片机是具有Flash存储器且指令与MCS51完全兼容的、高性价比的微处理器。其中89C2051带有2kB Flash存储器,可用于从控站。89C55WD则具有20kB Flash存储器,可用于主控站。    TLC0832是一款8bit二通道三总线的A/D转换器,其特点是体积小巧、占用单片机资源少,且性能优良。 3.2 电路设计 该设计中的接收放大电路如图3所示。其中D7用于箝位,以防止过大的浪涌电流;C5、L1及Q1组成输入信号选频放大电路,以对输入的微小信号进行放大,从而提高接收灵敏度。    发射放大电路如图4所示。这种发射放大电路非常简单,主要由4个三极管组成,四个二极管起保护作用。从控机数据处理及控制电路原理如图5所示。当PL2101收到的载频信号经内部电路处理后,它将解调出数据bit信息,并经RXD输出,同时HEAD同步输出低电平。当AT89C2051的INT1产生断并接收bit后,会根据预定格式合成相应的指令信息;同时根据指令中所规定的时间设置来修改开关灯时间及开灯的比例,并执行开关灯的操作等。另外,它还将在开灯后监控电流、温度等参数,以便在严重超标时执行保护措施,同时及时给主控机发送故障原因信息。 主控机信息处理电路如图6所示。它的调制与解调电路与从控机一致,在图中增加了中文液晶显示和一个12键键盘,可用于现场进行电路参数设置。与总控机之间的通信采用行通信协议,并通过中断由SBUF进行收发,员时经SN75176转换成RS-485电平。其物理结构可以是光纤或无线数据传输设备。    总控机的作用是在PC机上用VB开发整个城市路灯控制系统的线咱图,它可在某一路灯发生故障时,准确及时地显示出故障发生的具体位置和可能的故障原因。 3.3 软件设计 该系统软件要用C51语言编写,并采用全部模块化编程。从控机中的单片机程序模块包括对PL2101的接收以及电流和温度采样、路灯控制等,其主程序流程如图7所示。主控机中的程序模块主要包括对总控机通信数据的接收、键盘的扫描、显示以及对从控机发送数据等,其主程序流程如图8所示。图9为其中断程序。 4 结束语 该城市路灯控制系统开发完成后,目前已被应用在860只路灯的小型应用控制系统中。实际使用证明:该系统性能稳定良好。

    工业控制 中的应用 pl 路灯控制系统 2101

  • 用TestStand构建通讯产品并行测试平台

    An Instrument Parallel Testing Platform for Telcom Products Based on TestStand 应用领域:产品测试挑战:使用成熟的测试策略实现通讯产品单板功能的并行测试方案应用方案:利用NI TestStand 模块化、易用性的特点,再借助PXI 总线的的系统结构来构筑通讯产品单板并行测试平台使用的产品:Measurement Studio 、Teststand2.01 -------------------------------------------------------------------------------------- 本文详细内容 PDF格式

    工业控制 通讯产品 并行 测试平台 teststand

  • 使用TEMIC感应卡技术的智能电子门锁系统

    摘要:简要介绍基于TEMIC感应卡技术的电子门锁系统,包括主要功能、工作模式、系统组成;重点介绍在提高系统安全性、可靠性,降低功耗方面采取的部分措施。该系统可与门禁系统、考勤系统、消息系统及停车场系统等一起构成“一卡通”系统。     关键词:感应卡技术 智能门锁 一卡通 1 概述 早期的智能电子门锁是采用磁卡作为开门钥匙的磁卡锁,主要用于宾馆客房。随着半导体技术的发展,功能更强、可靠性更高的接触式IC卡智能电子门锁成为主流。接触式IC卡电子锁的主要优点是卡片存储容量大,有比较完善的完全机制。采用智能电子门锁,可灵活地设定多种开门权限,防止非法复制,实现分级管理和分区域管理。其时间控制功能和存储开门记录功能彻底改变了机械式门锁功能单一状况,使门锁成为管理体系的一部分,大大提高管理水平和服务水平,因此逐渐成为星级宾馆的基本设施之一。 进入21世纪,感应式IC卡(也称非接触式IC卡)技术迅速发展,新一代的基于感应式IC卡技术的智能电子门锁也应运而生。由于感应式智能电子门锁无机械接触,不会产生摩擦,因此减少了磨损和人为损坏,大大降低了故障率。目前,感应式电子锁的应用领域正不断扩展,已从传统的酒店业扩展到高级办公场所、高级公寓,甚至进入了家庭。 本文重点讨论适用于高级宾馆的感应式智能电子门锁系统。 2 系统组成及功能 感应式智能电子门锁系统通常由智能电子门锁、感应卡、发卡管理软件、手持式POS机和发卡器等5个部分组成。下面介绍各部分的主要功能。 (1)智能电子门锁 安装于客户门上。当有感应卡接近锁体上的天线时,锁内的微控制器(MCU)自动启动读卡程序。如果读到的是有效卡,则驱动微电机,带动离合机构,此时按下手柄,锁就被打开;如果读到的是非有效卡,则发出无效卡提示,此时也能按下手柄,但锁无法被打开。 智能电子门锁的主要功能: *分区管理功能——支持分区管理,服务卡仅在本服务区内有效; *分级管理功能——支持服务区、楼层、楼座、酒店四级管理; *时效控制功能——无论宾客卡还是职员卡,都有时效限制,到其自动失效; *时间表功能——可在每周7天中,指定有效日和无效日; *时间窗功能——可在每天24小时中,规定有效时段和无效时段; *新卡替旧卡功能——新发的卡可自动终止旧卡; *终止/恢复功能——可使用终止卡使指定客房门锁暂停使用,可使用恢复卡使暂停使用的客房门锁恢复使用; *开锁记录功能——刷卡时,门锁将卡号和开门时间记录在锁中,供随时查询,最大记录数为240条; *低电压提示功能——当电池电压低于5.1V时,绿灯和黄灯同时亮起,提醒用户换电池(低电压提示后,仍能开锁100次以上); *反锁功能——开门卡可设定为允许开反锁或不允许开反锁; *常开功能——办公型锁具有常开功能,酒店型无此功能。 (2)感应卡 卡类型及功能如表1所列。表1  名  称 持卡人 适用范围 功      能 宾客卡 住宿宾客 客房门锁 在给定的时域内开启指定客房门锁 服务卡 服务员 服务区客房门锁 在给定的时域内开启本服务区客房门锁 楼层卡 楼层领班 楼层客房门锁 在给定的时域内开启本楼层客房门锁 楼座卡 楼座经理 全楼客房门锁 在给定的时域内开启本楼客房门锁 总管卡 总经理 整个酒店 在给定的时域内开启整个酒店各客房门锁 应急卡 高级管理人员 整个酒店 在给定的时域内开启整个酒店各客房门锁 终止卡 管理人员 整个酒店 使指定客房门锁暂停使用,即使宾客卡暂时失效 恢复卡 管理人员 整个酒店 使处于暂停使用状态客房门锁恢复使用 (3)发卡管理软件 发卡管理软件的主要功能; *系统管理——操作日志、密码更改、操作员设定、系统暂停; *功能管理——用户信息、管理区域、房间设定;默认参数设置; *通讯管理——门锁数据通信、基本信息查/询、开锁记录查询; *客房管理——制宾客卡、客人退卡、改有效期、空房查询、入住情况、退卡查询; *员工管理——制员工卡、退员工卡、改员工卡、员工卡查询、制处理卡。 (4)手持式POS机 手持式POS机用于发卡管理软件和智能门锁之间的信息沟通。发卡管理软件通过RS232串口将酒店识别号、房间号、读卡密码等信息下载到POS机,再由POS机通过RS232串口将酒店识别号、房间号、读卡密码等信息下载到智能门锁,同时可校对时间。同样,存放在锁内的开锁记录,也由POS机上传到发卡管理软件进行统计分析。 (5)发卡器 实际上,发卡器是一台TEMIC卡读写器,与发卡管理软件配合使用,完成发卡、锁卡、卡查询等功能。 3 智能电子门锁设计 智能电子门锁是整个系统的关键设备。智能门锁的主要设计目标是:设计合理的卡数据结构,确保在实现功能的前提下,支持系统功能扩展,即支持“一卡通”功能;系统静态功耗更要足够低;具有很高的可靠性和足够的安全性。 (1)TEMIC感应卡技术 德国TEMIC公司(现已被美国Atmel公司收购)研制开发了一系列非接触IC卡产品,包括e5530、e5550、e5551、e5560、e5561应答器芯片和U2270B读写基站芯片。应答器通常封装成卡片形式,也可以封装成玻璃管中。    下面简单介绍应答器e5550。e5550为带264位EEPROM的TEMIC标准读写应答器芯片,其存储区分为8个区,每区33位。0位为该区锁定位,一旦锁上(置1),该区即被“写保护",阻止任何改写。0区存放模式字,其读写操作取决于模式字的设置,如波特率、发送数据调制方式、最大允许传送数据区、口令和AOR功能及锁定位的设置等。1~6区为用户数据区,可按区读写。7区在口令模式工作时为口令区,如果不需要口令保护,7区也可以与1~6区一样用做用户数据区。 读写基站芯片U2270B配以少量外围器件和耦合天线,与MCU一样构成读写器。也可以说,U2270B读写基站芯片是MCU与应答器之间的通信接口。应答器进入RF磁场,经线圈感应得到电能并自动加电复位后,等待256个RF场时钟周期后,开始按照模式字设定的比特率和调制方式,对存储器相应区数据重复读取并发送。基站芯片对接收到的信号进行解调,并以曼彻斯特码方式发送给MCU,曼彻斯特码解码工作由MCU程序完成。MCU通过对基站芯片的CFE进行控制,以短间隙射频场中断的办法,将数据写入应答器。 (2)硬件设计 智能电子门锁的原理如图1所示。微控制器(MCU)采用美国Microchip公司的8位微控制器(PIC16F73)。红外线检测电路的作用是探测有无感应卡靠近,每隔一定时间,发射电路会自动射红外线信号,如有物体靠近,接收电路就会收到反射回来的红外线信号,并立即通知MCU进行读卡操作。感应卡读写IC在MCU驱动下,对感应卡进行读操作,然后将读到的数据曼彻斯特码形式返回给MCU,由MCU通过程序解码;将解码后的卡上数据与存储器中存放的锁内参数进行核验,并依据当前时间,确定是否是有效卡;如果有效卡,则启动电机驱动电路开锁,同时将相关信息(开锁记录)存入存储器。MCU通过RS232接口与手持式POS机进行通信,从POS机接收各种设置数据、校对时间等;在必要时可将锁内存放的开锁记录传送给POS机,然后传递到电脑,进行统计分析。低电压检测 电路自动对电池电压进行监测,一旦电池电压下降到规定值,立即通知MCU,由MCU启动黄色低电压提示LED,提醒客户尽快地换电池。电源电路在控制功耗方面起着重要作用。它在MCU的控制下为包括MCU在内各部分电路提供电源,并可以在不同状态下,根据实际需要改变电压值,从而使总体功耗保持最低,延长电池使用寿命。 (3)微控制器软件设计 MCU控制软件整个系统中最重要的环境。我们使用汇编语言编程,采用自顶向下(top-down)的程序设计方法,遵循结构化程序设计的原则,使软件效率和可维护性较高。 软件主要分以下5个功能模块:初始化与自检模块、解码与读卡模块、数据校验模块、通信模块和串行存储器读写模块等。串行存储器读写模块的主要功能是,为其它模块提供访问串行存储器的读写模块子程序。因此,除串行存储器读写模块外,其余4个模块相对独立。这样,就降低了程序编制、调试的复杂性,提高了软件的可靠性和可维护性。 初始化与自检模块的功能是使系统恢复到初始状态,并对各硬件电路进行检测。检测范围包括:感应卡读写IC是否正常、实时时钟是否正常工作、串行存储器读写是否正确、红外线检测电路是否正常工作、电机驱动电路、蜂鸣器及LED显示等。利用LED的亮/灭组合指示故障电路,自检覆盖率达90%以上,大大提高了生产和维修工作的效率。 解码与读卡模块主要负责驱动感应卡读写IC,并对其返回的曼彻斯特码数据进行解码。提高解码的速度和成功率是编制该模块的难点。成功解码后,解码与读卡模块将读到的卡上数据以二进制码形式传送给数据校验模块进行处理。后者以当前时间和存放在串行存储器中的设置数据为依据进行校验,确认是否为有效卡,从而决定是否开锁,并完成写开锁记录、新卡替旧卡等操作。 通信模块负责控制与手挂式POS机的通信,利用POS机设置门锁的房间号、开始时间、结束时间、读卡密码、当前时间等重要参数,并将存放在锁内的开锁记录上传,以便传递到电脑进行统计分析。为防止非法操作,通信时要进行密码核对。 (4)低功耗技术 由于采用电池供电,在设计智能电子门锁时必须很好地解决低功耗问题。在静态时,平均电流应保持在25μA左右,这样,4节5号碱性电池的使用寿命一般可达1年以上。为此,我们采取以下措施: ①选用PIC16F73。该芯片在睡眠模式下,如果I/O口状态设置得当,电池可控制在1μA左右。 ②尽可能降低晶振频率。由于PIC16F73采用了先进的RISC结构,即使在晶振频率较低的情况下,也能稳定工作,并提供足够的处理能力。 ③尽可能延长睡眠时间,缩短工作时间。为此,采用了红外线探测技术。MCU在99%以上的时间内都处于功耗极低的睡眠状态,读卡IC等大多数电路也停止工作,只有红外线检测电路定时发射红外线信号。若无物体靠近,接收电路不会接收到红外线信号,MCU就继续睡眠;如有物体靠近,接收电路就会收到反射回来的红外线信号,并立即通知MCU进行读卡操作。处理好红外线检测电路的灵敏度和抗干扰能力的关系非常重要,如果灵敏度太低,就会产生读卡反应慢的现象;如果对抗干扰能够不够,各种灯光或太阳光中的红外线可能引起误触发,使系统经常处于工作状态,都会严重影响系统性能。 ④采用可由MCU控制的电源电路。当某些电路不工作时,就停止供电,等到需要工作时再供电;对某些电路,还可以降低供电电压,以达到节电的目的。 (5)安全性与可靠性 门锁系统在安全性方面需要解决的问题是:防止开门卡被非法复制;防止用非正常方式(如果工具拨、撬,用强力磁铁吸等)开锁;锁体具备一定程序的抗外力破坏能力。 为了防止开门卡被非法复制,每一张卡片在出厂以前都进行了加密,不同的客户使用互不相同的密码。发卡管理软件也用密码保护,避免非授权人员利用发卡管理软件非法制卡。由于采用三锁防拨锁芯,门关上时,防拨锁被门框压紧,自动锁定主锁,无法用工具拨开或撬开;电机带动的离合机构具有防强力磁铁吸合功能;锁制前锁体上无任何镙钉外露,防折防砸。 门锁系统的可靠性也非常重要。我们从硬件设计和软件设计两方面来提高系统的综合可靠性。在硬件方面,我们选用的主处理器PIC16F73具有较高的抗干扰能力,内部包含了具有独立RC振荡器的“看门狗(WDT)”电路,在程序跑飞时可自动将CPU复位,恢复正常运行;对存储重要数据的EEPROM,采用硬件写保护措施,避免数据在受到干扰时丢失;尽量使用贴片元件,严格进行老化筛选,保证元件品质PCB布线方面,采取一系列措施,提高抗干扰能力。 在软件设计方面,我们通过刷新各寄存器和SRAM单元,确何即使这些寄存器或SRAM单元受到干扰而被修改,也能立即恢复。在程序中,避免危险程序结构也是提高可靠性的重要措施。有几种循环结构容易造成“死循环”隐串民,例如,在执行某个功能时,必须循环等待某个由中断或定时器产生的条件;由于等待的时间可能较长,在循环中会包含清WDT指令,这在正常流程中不会发生问题。但是,如果PC内容受到干扰而改变,程序跑飞后,正好落在这种循环中,此时中断或定时器可能未被打开,于是程序就会循环等待一个不可能出现的条件,即出现“死循环”。这种情况虽然出现概率较小,但也必须加以防止。 另外前面提到,为降低功耗,99%以上的时间内MCU都处于功耗极低的睡眠状态,大部分电路的电源被关闭。这种状态下,抗干扰能力也较强。 结语 上述感应式智能电子门锁经过充分测试和近1年的实际使用,结果表明,该系统在软硬件功能、完全性、可靠性、低功耗等方面都已达到了设计要求。由于在设计之初,就考虑到要实现“一卡通”应用,所以系统具有很好的扩展性。目前,已在酒店型智能电子门锁的基础上,发展出无需发卡管理软件,用户可自行发卡,独立使用的办公型电子门锁和家用型电子门锁系统,使用方便、安全可靠的保险箱系统,使用RS485总线联网的智能消费终端,门禁/考勤系统等7个产品的产品系列。这个产品系列中的各个产品,不但在功能上实现了“一卡通”,而且使用的许多元器件都是相同的,部分产品之间甚至可以互换电路板,降低了生产的复杂性和产品成本。

    工业控制 系统 temic 电子门锁

  • 基于混沌电路设计阵列触觉传感器的采集系统

     摘要:基于混纯帐映射和开关电容(SC)技术设计A/D转换器。该转换器具有非线性放大、便于实现集成、成本低及工作可靠等优点。实验结果谫,用该A/D转换器设计的模拟式阵列触觉传感器信号采集系统是可行的。     关键词:阵列传感器 混沌电路 开关电容 A/D转换 信号采集 引言 随着机器人技术和复杂检测系统的出现,人们对触觉传感器提出了更高的要求。随着触觉阵列规模的扩大,希望A/D转换速度加快,而原先在小规模阵列触觉传感器系统中采用的共用A/D转换器的方法,已不能满足大规模阵列触觉传感器信号采集实时性的要求。因此,要想实现高速、高分辨率并且对小信号敏感的大规模阵列触觉传感器信号采集系统,关键部件就是A/D转换器。    本文利用混沌帐篷映射方法和开关电容(SC)技术,设计了一种新型A/D转换器。该A/D转换器的电路具有调理放大、误差补偿和A/D转换功能一体化的优点,并且电路简单、便于集成、功耗小;能以很高的性能价格比实现多路触觉传感器输出信号的并行采样和A/D转换。 1 阵列触觉传感器信号采集系统的组成 模拟式阵列触觉传感器信号采集系统的原理电路见图1。该系统由m×n阵列传感器、列读取电路、行扫描电路、n个ADC电路、时序控制电路和计算机等组成。在时序控制电路的控制下,行扫描电路对m行阵列触觉传感器发送周期性激励信号;而列读取电路则周期性地并行读入n列输出信号。读n个信号经n个A/D转换器,把模拟信号转换成格雷码序列直接送到计算机;计算机完成格雷码向二进制码的转换,接着在时序逻辑的控制下,读取下一行的n列信号并进行A/D转换。计算机在获得1帧m×n触觉传感器信号后,就可以进行信号处理了。图1中除A/D转换器需要特殊设计外,其余各电路都有现有的产品,没有特殊要求。 2 混沌开关电容A/D转换器的设计 2.1 混沌开关电容A/D转换的原理 利用开关电容技术进行误差补偿的基本原理是电荷的再分配。电容失配误差利用开关转换储存起来,结果由电容上电荷的再分配而得到补偿。混沌帐篷映射是一种离散非线性系统,其映射关系为: 这一映射可以看到由两步组成:先将区间[0,1]伸长2倍,然后再压缩成原区间[0,1]。如此反复迭代操作,最终导致相邻点的指数分离,从而进入混沌状态。这种映射对初始值(系统的输入信号)的放大与通常的线性放大方法不同:线性放大倍数为一常数,而且受工作范围限制;而处于混沌状态的帐篷映射系统,是在有界的区间内,迭代1次将信号放大2倍,反复有限次迭代后,可以将微弱信号放大到可观测的水平,而不会出现溢出再现象。显然,这是一种非线性放大。帐篷映射系统的输入值Vin对应于系统的初始状态x0。x0可以二进制小数表示: 为了得到离散帐篷映射的迭代输出与x0的关系,引入另一种非线性映射——离散贝努利移位是映射: 这一映射的作用是每迭代一次,就将二进制位t1、t2、t3、……向左依次移出一个二进制位,即 对于贝努利移位映射,令bn=sgn(x'n-0.5),作为贝努利移位映射的第n次迭代输出,由于bn=tn,且bi(i=0,1,2,…)是一个二进制序列;对于帐篷映射,令gn=sgn(xn-0.5),则gi是与bi对应的格雷码序列,即 根据上述和初始时刻x0=x'0=Vi,可得: 因此,通过将帐篷映射迭代输出的格雷码序列gi(i=0,1,2,…),转换成贝努利移位映射的二进制序列bi(i=0,1,2,…),可推算出初始值(输入信号的二进制数字量),即 式(7)中{Vin}表示输入信号的二进制数字量。gi(i=0,1,2,…)就是经过帐篷映射完成了对输入信号的非线性放大和A/D转换的格雷码形式的数字量。 2.2 混沌开关电容A/D转换电路的实现 利用并关电容技术进行电路设计,有其独特的优点:电路的性能与电容无关,只取决于电容之比,两个电容比值的误差小于1/1000,因此电路运算精度高;电路便于实现大规模集成,因而电容体积小、工作可靠、成本低,功耗小(一个开关电容A/D转换器功耗4mW)等。这些优点对模拟式阵列触觉传感器信号采集系统最有利,因此该系统需要大量的ADC。图2 混沌开关电容A/D转换电路    基于帐篷映射的开关电容A/D转换电路如图2所示。运放A1、A2及周围的电路完成帐篷映射,即完成对输入信号的非线性放大和A/D转换;C4、C5、A3及周围的电子模拟开关组成保持电路,输出信号V0为输入信号的格雷码形式的数字量。图3为电路时序控制逻辑。 图2电路,当启动信号为高电平时,电子模拟开关指向“1”端,输入信号Vi接通。延时t1时间后,D触发器产生一个脉冲信号,这时,若0≤Vi≤0.5,则电子模拟开关S1指向“2”端,C1、C3和A2及有关的电子模拟开关构成一个开关电容比例延时器,如图4所示。在(n-1)T时,Vi给C1充电,充电电荷为C1Vi(n-1),C3被短路,V02(n-1)=0;在nT时,C1中电荷转移到C3中,充电电荷为C3V02(n),由电荷守恒原理,其差分方程为: C1Vi(n-1)=C3[V02(n)-V02(n-1)]=C3V02(n)    (8) 式(8)经过Z变换可得该电路Z域传递函数: H(Z)=V02(Z)/Vi(Z)=(C1/C3)Z -1    (9) 若取C3=0.5C1,则有: H(Z)=V02(Z)/Vi(Z)=(C1/C3)/Z -1=(C1/0.5C1)Z -1=2Z -1    (10) 可见,图4的电路具有起放大作用的比例延时功能,实现了对输入信号的翻倍,即实现了y=2x的运算;同时对C4充电,当下一个“o”脉冲为高电平时,C4中电荷转移到C5中,这时开关S0指向“2”端,把输出信号Vo反馈到输入端,给C1充电,实现迭代运算。经过n次迭代后,使Vi信号入大,直到可观测为止。    同理,当0.5≤Vi≤1时,Vi向C2充电,电子模拟开关S2指向“2”端,这时,C2、C3和A2构成另一个开关电容比例延时器,把式(9)中的C1换成C2,就是这个比例延时器的Z域传递函数。“e”脉冲为高电平时,C2中电荷Q=C2Vi转换到C3中,若取C3=0.5C2,就实现了y=2(1-x)的运算;当下一个“o”脉冲为高电平时,C4中电荷转移到C5中,这时开关S0指向“2”端,把输出信号Vo反馈到输入端,给C2充电,实现迭代运算。经过n次迭代后,使Vi信号放大到可观测为止。 这样,经过一个周期T,完成了对Vi一个样点的采集。如此周而复始地进行A/D转换工作。D触发器输出的信号就是格雷码序列: 将gk序列和初始条件b0=Q0代入式(6)中,就得到贝努利二进制序列bk(k=0,1,2,…)。当然,只要把ADC的输出信号Vo(格雷码序列)送入计算机,转换成二进制数字量的工作,可由计算机通过软件来实现。 3 实验结果 利用图4的信号系统对5×7应变式微型阵列传感器输出的信号进行非线性放大和A/D转换实验,实验结果见表1。表1中为第4行7个传感器输出信号进行A/D转换的结果。实验结果表明,基于帐篷映射的开关电容A/D转换器可有效地实现对小信号的放大和A/D转换。 4 结论 本文利用混沌电路对小信号敏感及它具有的非线性变换的独特性能,设计了混沌帐篷映射开关电容新型A/D转换器。这种A/D转换器适用于机器人模拟阵列触觉传感器输出信号的A/D转换。它集调理放大和A/D转换于一体,具有电路简单、易于集成及功耗小的特点。开关电容电路只有二相时钟,电路性能只取决于两个电容之比而与电容绝对值无关,因而电路运算精度高、成本低。利用该A/D转换器可实现多路触觉信号的并行采样和A/D转换,以满足大规模阵列传感器信号的实时采集要求。实验结果证明了本方法的有效性。表1 A/D转换实验结果 传感器 (4,1) (4,2) (4,3) (4,4) (4,5) (4,6) (4,7) 测量值/mV 0 80 67 188 246 170 25 计算值/mV 0.0 80.2 66.4 187.5 242.3 168.9 24.7 格雷码gog1…g6g7 00000000 00011111 00011001 00101000 00100001 00111110 00000101 二进码b0b1…b6b7 00000000 00010101 00010001 00110000 00111110 00101011 00000110

    工业控制 触觉 电路设计 采集系统 混沌

  • I2C总线CMOS型PB-0300数字图像传感器

       摘要:介绍CMOS型数字图像传感器PB-0300的性能特点、功能设置、与MCS-51系列单片机的接口电路及编程技术。     关键词:I2C总线 数字图像 传感器 1 功能描述 1.1 性能特点 PB-0300系列CMOS型有源像素数字图像传感器,内置模数转换8、位并行数据输出、64个内部寄存器,采用I2C总线控制,可编程控制;可以在彩色和黑白两种模式下工作。当外接24MHz时钟晶振时,可以获得30帧/s的图像输出。在上电期间,自动调入缺省参数设置,包括自动曝光功能,所以可以不编程情况下使用传感器。主要性能指标如表1。表1 主要性能指标 阵列格局 640×487(311 680像素)VGA参考:640×480(307 200像素) 像素大小和类型 有源光电二极管,空间分辨力:7.9μm×7.9μm 帧速率/(帧/s) 0~39 最大数据传输速度/(MB/s) 24(在24MHz时钟下) 功率/mW 300(最大数据速度下) 数字信噪比(1lux条件下) 大于20dB(10:1)(对绿色像素,30Hz的以照明度) 数字敏感度 红色:950bit/lux-second,绿色:650bit/lux-second,蓝色:750bit/lux-second,(增益为10,ADC参考为+5.0V) 工作电压/V +5.0 工作电流/mA0 60 工作温度/℃ -5~70 输出 8位彩色(单色)数字输出 快门 电子旋转抓拍 可编程控制项 窗口尺寸和位置、信号增益、曝光参数、自动曝光参数、ADC参考、帧速率、DAC偏置 1.2 内部结构 PB-0300由五大部分组成:数字逻辑模块、像素阵列、列平行的增益电路和读出电路、8位ADC、偏置DACs,如图1所示。 主要引脚功能如表2。表2 主要引脚功能描述 引脚名称 工作方式 功  能  描  述 LINE_VALID 输出 行有效信号--图像数据在数据输出总线上时有效 FRAME_VALID 输出 帧有效信号 SDATA 输入/输出 I2C数据通道 SCLK 输入 I2C时钟 PIX_CLOCK 输出 像素时钟,下降沿有效 CLOCK_OUT 输出 主时钟输出 CLOCK_IN 输入 时钟输入,标称主时钟为24MHz DOUT0~7 输出 8位并行数据输出 SADDR 输入 器件连线地址脚,SADDR=5V:写地址=BA,读地址=BB;SADDR=0V:写地址=92,读地址=93 VREF1 输出 ADC参考偏置 STANDBY 输入 关闭模拟偏置电路和内部时钟(省电) RESET_BAR 输入 复位键,低电平有效 PB-0300有三种分开的供电电源:数字电源、模拟电源和传感器阵列电源。使用时要特别注意各电源间的相互影响。 2 图像输出格式与时序 PB-0300控制像素数据输出的信号有:帧有效(FRAME-VALID)信号、行有效(LINE-VALID)信号、像素时钟(PIXCLK)信号。FRAME-VALID信号控制一帧有效图像的输出,高电平有效;LINE-VALID信号控制每行有效信号的输出,高电平有效;PIXCLK信号控制每个像素的输出,当FRAME-VALID和LINE-VALID均为高电平时,每个像素时钟周期输出一个8位像素信号;并行的DOUT0~DOUT7是像素数据的8位输出,它们始终和像素时钟同步。在PIXCLK处于下降沿时,数据输出和LINE-VALID都不能改变。在默认的VGA(640×480)下,当每行640个有效像素信号输出之后,LINE-VALID变为低电平,PB-0300按一定编码方式向外输出982个无效信号,然后再输出像素信号。当480行有效像素和无效信号完全输出之后,传感器再输出9行空白信号。这期间FRAME-VALID为低电平,标志着当前帧的结构和下一帧的开始;同时,读入寄存器的最新值,通过对寄存器编程而改变的图像参数在下一帧生效。信号输出时序如图2所示。 3 寄存器设置 PB-0300共有64个寄存器(R0-R63),地址依次为00H~3FH,在缺省情况下有自动曝光功能;可以改变输出图像的大小、位置和速度;通过调节像素累积时间、ADC参考和增益值可以控制采集到的图像亮度。下面介绍几个主要寄存器的功能。 *复位控制寄存器(R13) R13能够使PB-0300复位到上电后的缺省状态。首先向R13的最低位写入“1”,使PB-0300处于复位状态,然后再写入“0”继续工作。 *窗口位置与大小控制寄存器(R1,R2,R3,R4) 控制采集图像窗口的位置与大小。只有在此窗口内的像素才能有效地读出。窗口的像素个数最大值为640×480。R1为行起始坐标,R2为列起始坐标,(1024-R3)为有效行数,(1024-R4)为有效列数;窗口大小的默认值为VGA(640×480),右上角坐标为(0,0),左下角坐标为(639,479)。 *像素累积控制寄存器(R8,R9) 控制像素的采光时间,R8为累积帧数,R9为累积行数,实际总的累积时间,即实际处理完一帧图像的时间为:Tint=[(R8×(1024-R3)+R9)×Trow,其中,Trow为处理完一行有效像素所用的时间。一般的R8设置为0,R9的最大值为有效图像窗口的行数。Tint的值应该能信号避免由于光闪烁使图像产生条纹。在60Hz光闪烁频率下,Tint必须为1/120s的整数倍;50Hz频率下,Tint必须为1/100的整数倍。 *帧速率控制寄存器(R5,R6,R10) 控制每行和每帧有效像素信号之间的无效信号时间。当其它图像参数改变时,通过改变上帧速度控制寄存器的值为调节帧速率。若通过R4减小有效像素列数后,处理一行有效像素的时间将变短,帧速率将增加。这时可以调节R5的值来增加每行元效信号的输出数量和时间,从而使帧速率保持不变;同理,若改变有效像素行数时,调节R6来保持帧速率。R10是通过控制PIXCLK的输出来改变像素输出时间的。图2 信号输出时序    *增益设置寄存器(R43,R44,R45,R46,R53) 设置输出像素的各种颜色的增益值。像素信号在模数转换前经过增益放大电路,分别对各种颜色进行处理,R43、R46分别对应蓝色和红色,R44、R45都对应绿色,R53是全局设置。一般的照明情况下(100~1000lx),增益值为1~8,编程的值是多少,对应的增益值就是多少。从R53可以读出自动曝光模式下的增益值。 *模数转换参考(ADC)控制寄存器(R25) 通过改变模数转换参考值,改变图像的数字输出,从而调节图像亮度。当图像亮度大时,增加ADC值,得到的图像将变暗;当图像较暗时,减小ADC值,得到的图像将变亮。在非自动曝光模式下,R25控制ADC的最大参考值(最小参考值为0),其典型值在24~38之间。在自动曝光模式下,ADC参考值不能改变。 *信号漂移值设置寄存器(R32) 设置信号漂移值,调节图像的亮度,可以设置正负两种值。当图像太暗时,给R32加一个正值,像素信号变大,使得图像变亮;当图像太亮时,给R32加一个负值,使图像变暗。 4 PB-0300与单片机的接口 当PB-0300复位至默认状态下时,能够自动工作,此时采用自动曝光功能,输出的图像为640×480像素,输出速率为30帧/s。也可以通过修改寄存器的值来改变传感器的工作方式和提高图像的输出质量。在MCS-51系列单片上,可以使用虚拟I2C总线软件包VIIC模拟I2C总线,对PB-0300的寄存器进行读写。接口电路如图3所示。 PB-0300采用16位寄存器,需要写入2个字节,写满之后寄存器地址自动增加。所以对连接寄存器进行写操作时,只需写入第一个寄存器的地址;进行读操作时,先对控制寄存器空写一次,以明确操作对象,然后进行读数。子程序WRITE是将默认状态下R5的值(510)修改为340(0214H),使图像输出为VGA(640×480),输出速率为25帧/s。子程序READ是以读R9、R10为例的典型程序。子程序清单如下: VSDA EQU P1.7 VSCL EQU P1.6 SLA EQU 50H NUMBYT EQU 51H MTD EQU 30H MRD EQU 40H WRITE:MOV 30H,#05H ;寄存器R5地址 MOV 31H,#02H ;寄存器值(0214H) MOV 32H,#14H MOV SLA,#0BAH ;寻址并为写操作 MOV NUMBYT,#03H ;写入字节数 LCALL WRNBYT RET READ:MOV 30H,#09H ;寄存器的R9地址 MOV NUMBYT,#01H ;写入字节数 MOV SLA,#0BAH ;寻址并为写操作 LCALL WRNBYT MOV SLA,#0BBH ;寻址并为读操作 MOV NUMBYT,#04H;读出字节数 LCALL RDNBYT RET    可以利用USB接口直接读出PB-0300芯片的数据。在LINE-VALID和FRAME-VALID信号均为高电平时,按照像素时钟PIXCLK的输出读数。由于USB接口速度快,能够将PB-0300的数据实时地传送到计算机内。 PB-0300具有体积小、功耗低、接口简单的特点,而且编程操作灵活,可以不用编程在默认方式下工作,也可以通过编程来改变输出图像的质量、大小和速度等,特别适合于现场应用中。PB-0300系列目前流行使用的是PB-0330。

    工业控制 cmos i2c pb 0300

  • 基于PC/104的多串口通讯的设计

    作者Email: liang_yue0625@sohu.com 摘    要:提出了一种在PC/104上进行多串口通讯的设计方法,介绍了多串口通讯在DOS平台上的软件设计,采用C语言进行编程,可以方便的移植到其他的平台上。 关 键 字:串行通讯;PC104; 0 引 言     目前,最先进的嵌入式工业计算机PC/l04,以其优良的品质、高可靠性及模块化,广泛应用于工业控制、航空航天、军事、医疗、消防设备、智能仪器仪表、导航、通讯、数控、自动化生产设备的数据采集、便携式计算机等领域。而在实际的应用中,有时需要借助微机的数据处理能力和丰富的软件资源,使组成的系统功能更为强大。这样必须实现PC机与PC104之间的通讯,在通常实时性要求不高,数据量不大的情况下,可以采用串口进行通讯,但通常一般的PC机只配有两个串口,在控制领域有时候是不够的,而基于PC/104结构的嵌入式系统可以根据实际的要求通过简单的搭积木的方法进行配置,其功能模块比较丰富,当进行多串口控制时可以选用基于PC104的多串口卡(一般扩展4~6个串口)。     本文采用的是HXL-COM4A的4串口扩展板,该板上集成了高性能的16C554控制芯片(相当于4个16C550),每个通道有独立的16字节接收缓冲器和16字节发送缓冲器,可以达到更高的通讯速率而无需占用过多的CPU资源,并且每个串口可配制成RS232RS422RS485模式。 1  多串口通讯软件的设计:     由于大部分的基于PC/104软件的设计都是在DOS平台上的,所以本文以BRAODLORD C为编译环境进行设计多串口通讯软件的设计。程序框图见图1     一般情况下串口的地址是:COM1:3F8 COM2:2F8 COM3:3E8 COM4:2E8 COM5:3A8   COM6:2A8, 如有区别参照多串口卡的手册。     1.1串口波特率和数据格式的设置:     首先向LCR(线路设置寄存器)的高位写入1,然后在设置波特率:在基地址和基地址+1的地方写入的数据为1843200/(16*波特率)。然后设置LCR,最后设置Modem控制寄存器和中断允许寄存器。     代码如下: void init_com(int com_X){ outportb(com_X+3,0x80);outportb(com_X,0x06);outportb(com_X+1,0x00);//波特率为19200outportb(com_X+3,0x0b);//数据格式:8个数据位,一个停止位,奇校验outportb(com_X+4,0x0b);//允许将中断信号送到系统总线outportb(com_X+1,0x01);}//允许接收产生中断     1. 2中断的允许和禁止:     一般情况下,串口通常配置成接收产生中断,发送不产生中断。在PC/104上的设计可以参照PC机的设计方式,中断控制器为两片8259,一片为主片,另一片为从片。当串口所用的中断为8以下时,设置主片8259的IMR(中断屏蔽寄存器)。当中断为8以上时,要设置从片的8259的IMR。     代码如下: void OpenInterrupt(unsigned char IntNum)//开中断{ int mask; char ControlWord[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; mask=inportb(0x21); if(IntNum<8) outportb(0x21,mask&ControlWord[IntNum]); else{ outportb(0xa1,inportb(0xa1)&ControlWord[IntNum-8]);  outportb(0x21,inportb(0x21)&0xfb); }}  void CloseInterrupt(unsigned char IntNum) file://关中断{charControlWord[8]={0x1,0x2,0x4,0x8,0x10,0x20,0x40,0x80};if(IntNum<8){outportb(0x21,inportb(0x21)|ControlWord[IntNum]);}else outportb(0xa1,inportb(0xa1)|ControlWord[IntNum-8]);}    串口的中断可以在PC/104的板子上参照手册,进行跳线设计。     1. 3串口通讯的中断向量设置:     当中断小于8时,中断向量地址为中断号加8,当中断大于8时,中断向量地址为中断号加0x68。下面是完整的串口初始化程序(以COM1为例) void int_setup(unsigned char comPort,char control){ static void interrupt (*old_int)(void); static void interrupt (*new_int)(void); int baseAdd; if(comPort<8) baseAdd=8; else baseAdd=0x68; disable(); if(control!=0)//当control为1时是串口的初始化,为0时是恢复系统状态{init_com(comBaseAddr[comPort]); switch (comPort) {case 4: old_int = oldhandler_com1;  new_int = handler_com1;   break; }old_int = getvect(baseAdd+comPort);setvect(baseAdd+comPort, new_int); file://保存旧中断向量地址,并设置新的中断向量地址 OpenInterrupt(comPort);}else {CloseInterrupt(comPort); setvect(baseAdd+comPort,old_int);}//恢复中断向量地址enable();}     1. 4串口数据的发送和接收:     当串口需要发送数据时,只要将待发送的数据以字符串的形式依次写入基地址中即可。当接收数据时,由于每接收到一个字符便产生一个中断,因此要在中断服务子程序的最后向8259写入20H到地址20H即可,如果中断号大于8,还要向从片8259写入20H到地址A0H。 2 串口的硬件设计     目前较为常用的串口有9针串口(DB9)和25针串口(DB25),通信距离较近时(<12m),可以用电缆线直接连接标准RS232端口。若距离较远,需附加调制解调器(MODEM)。最为简单且常用的是三线制接法,即地、接收数据和发送数据三脚相连,只需要如图2进行连接即可。     目前较为常用的串口有9针串口(DB9)和25针串口(DB25),通信距离较近时(<12m),可以用电缆线直接连接标准RS232端口。若距离较远,需附加调制解调器(MODEM)。最为简单且常用的是三线制接法,即地、接收数据和发送数据三脚相连,只需要如图2进行连接即可。     3 结束语: 本文较全面介绍了基于PC/104的多串口卡的通讯软件的设计,提出了串口通讯应注意的问题,并将此串口通讯软件应用在大庆油田的数据采集系统中,系统工作稳定,可靠。

    工业控制 pc 104 多串口通讯

  • 介绍一种高精度位置环系统

    作者Email: serlize@sina.com     摘要:本文简要叙述了高精度位置环系统的组成方法,详细阐述了光电编码器在位置环中的应用原理和速度修正方法。概述了单片机及串行D/A的应用。     关键词:光电编码器,位置控制,测速发电机,恒速控制。     0   引言:     我们在为某单位开发一种高精度恒速泵产品时,需要一种速度调节范围达1:100000以上﹑稳定精度≤0.3%调速系统。我们查阅了国内有关生产伺服控制系统厂家的产品,几乎没有一家能满足要求。为了研制该产品,我们经过认真分析,仔细论证后,决定采用光电编码器作反馈元件,用单片机测出光电编码器每分钟脉冲输出个数,与给定的速度量进行比较然后改变D/A输出电压幅度,送给伺服系统调整电机转速,最终将电机速度控制在±0.3%以内。试验证明该方案是可行的。     现将该系统的组成原理及实现方法作一个简单的介绍。     1   实现原理:     图1中的系统是传统的带PID调节的直流伺服速度控制系统。对于控制精度较低的产品虽能满足要求。但对于精度要求高的场合就不能适应了。这是因为:当电机运转一段时间后,电机温度随着工作时间加长而不断上升,而反馈元件(测速发电机)与伺服电机同轴连接,故测速发电机的温度也随之升高。因为测速发电机是用永磁磁缸制成,其转子线圈切割磁力线而产生电势,其值为:                    Ea=εa ∝  N   式中 Ea为测速机输出电势     εa为测速机电势常数     N为电机转速     一般情况下,εa是个常数,测速发电机产生的电势Ea正比于转速N。而实际上电机温度上升后εa已经发生了变化,通常情况下是下降的,εa变小,故Ea也变小。而此时电机转速并未下降,反馈到速度环的电压Δu随之上升,促使电机转速上升,迫使Ea上升,从而达到Δu维持不变。这样,随着电机温度上升,电机的速度也慢慢上升,而给定值并未改变,这就引起电机转速的误差增大。根据实际测量一般电机温度每上升100℃,电机转速的误差会增大1-3%左右。电机转速越低,相对误差越大。     为了纠正电机转速的偏差,采用600线/转的光电编码器作反馈元件,与电机同轴安装,就可以准确测出电机的转速。因为光电编码器是由激光照射光珊发出脉冲的,而光珊安装在光电编码器的转轴上,转轴每转一周(3600)编码器就产生600个脉冲,该脉冲只与转轴速度有关,而与温度无关。因此,只要准确测出光电编码器的脉冲个数,就可确切知道电机的转速。     例如,当电机的转速ND=1000转/分,则每秒钟光电编码器的脉冲个数应为                        n光=1000*600/60                           =10000(个脉冲)若                        ND=1转/分                        n光=1*600/60 =10(个)如果实际测量值与上述理论计算值有偏差,则可以通过调节D/A输出电压调整电机的转速,最终使                        Δn=ND测-ND理这样就可以将电机的转速控制在我们所希望的误差范围内。     2   元器件的选择;     2.1伺服系统(速度环)选用SC5HC60型直流脉宽伺服系统,调速范围可达1:10000以上,速度精度为0.5%FS。     2.2电机选用稀土直流宽调速伺服测速机组,与伺服系统构成速度闭环系统。     2.3 D/A器件选用分辨率为16位串行D/A。控制线为三线串行方式,即:一根时钟线,一根数据线,一根选通线。     2.4 光电编码器每转输出600个脉冲,五线制。其中两根为电源线,三根为脉冲线(A、B、Z)。电源的工作电压为 +5~+24V直流电源。     工作原理:当光电编码器的轴转动时A、B两根线都产生脉冲输出,A、B两相脉冲相差90 0相位角,由此可测出光电编码器转动方向与电机转速。如果A相脉冲比B相脉冲超前则光电编码器为正转,否则为反转.Z线为零脉冲线,光电编码器每转一圈产生一个脉冲.主要用作计数。A线用来测量脉冲个数,B线与A线配合可测量出转动方向.     2.5单片机选用89C51-24PC单片机,晶振频率为24MHz,用一个定时器作计数器来测量光电编码器的脉冲个数,另一个定时器精确定时,这样可准确测出电机每秒钟转动的距离,同时根据设定值计算出电机每秒钟应转动的理论值并与测量值进行比较,将误差值转换成数字量输出到D/A芯片的输入端,从而改变其电压输出,送给伺服系统控制电机的转速,从而达到恒速的目的。     例如:要将电机控制在500转/分,根据伺服系统的指标,当输入为0~5V信号时,电机转速为1500转/分,故可求得当ND=500转/分时,光码盘每秒钟输出的脉冲数为: PD=500×600/60=5000个脉冲对应该转速伺服系统的输入电压应为:VD=5.000×500/1500=1.6666V     当测出的脉冲个数与计算出的标准值有偏差时,可根据电压与脉冲个数的对应关系计算出输出给伺服系统的增量电压△U:     △U=△P×5.000/(1500×600/60)= △P/3000(V)    而输出到D/A的数字量的增量应为:    △D=△U×216/5.000     电机的整个工作调节过程如下:     工作前通过键盘设定控制转速,计算出输出电压VD并将该电压对应的输出到D/A的数字量V数=VD×216/5.000算出,直接送给D/A,电机开始起动运转。当电机运转一段时间后电机转速不断上升从而导致测速机磁性下降,测速机输出电势下降,经速度环调整后使电机转速上升,运行时间越长,电机转速上升越多。这时系统起动位置环,通过不断测量光电编码器每秒钟输出的脉冲个数,并与标准值PD进行比较,计算出增量△P并将之转换成对应的D/A输出数字量,在原来输出电压的基础上减去增量,迫使电机转速降下来,当测出的△P近似为零时停止调节,这样可将电机转速始终控制在允许的范围内。     3   硬件电路的实现     实际工作中由于伺服系统工作电流较大,对于微机干扰较大,故在硬件电路设计时应考虑到系统的隔离和干扰问题。由于选用的是串行D/A。信号的传输只用三根线,故采取隔离措施相对容易些。而光电编码器工作也容易受到干扰,因此除了正常的接地外,还要将光电编码器输出线中的地线可靠接地。光电编码器的A线做脉冲检测用,Z线作计数器用,速度输入用键盘输入数字,显示用液晶显示器。     4   软件     根据电路的连接情况,采用汇编语言编写了整个程序。现将部分阐述如下:     4. 1初始化    初始化内容包括定时器、中断系统及个单元内容的初始化 HSTART:MOV SP,#0E0H      ;设置堆栈顶地址        MOV IE,#90H      ;开中断及串行口中断允许        MOV IP,#5        ;将定时器1和串口中断设置高优先权        MOV TCON,#5      ;外中断0和外中断1全部为边沿触发方式        MOV TMOD,#21H    ;定时器0为方式1定时器2为方式2        MOV PCON,#0      ;SMOD=0        MOV SCON,#0D8H   ;串口设置成方式3,TB8=1,REN=1        MOV TH1,#0FDH    ;设定定时器1重装时间常数        MOV TL1,#0FDH        CLR ET1        SETB REN        SETB ES        MOV TH0,#2CH        MOV TL0,#0        SETB TR0        SETB TR1        ……    4. 2定时器0中断子程序CLOCK0:CLR ET0          ;保护现场指令        MOV TH0,#2CH    ;重置时间常数        MOV TL0,#0        INC QSE0        MOV A,#14H          ;判别1秒钟定时到否        CJNE A,QSE0,HCLZ        MOV QSE0,#0         ;计数器清零        MOV A,QSEC        ADD A,#1            ;秒单元加1        DA A        MOV QSEC,A        MOV A,#5        CJNE A,QSEC,HCLZ    ;判5秒钟到否        MOV QSEC,#0         ;秒单元清零        CLR EX0             ;关中断0停止计数HCLZ: 恢复现场指令      SETB ET0      RETI         ;中断返回4.3中断0计数程序POST1:CLR EX0     保护现场指令       MOV A,QLLD           ;计数器低位加1       ADD A,#1       MOV QLLD,A       MOV A,QLLD+1       ADDC A,#0MOV QLLD+1,A恢复现场指令       SETB EX0       RETI4. 4处理程序处理程序包括加减运算程序、数字转换程序、D/A输出程序、实时报警程序、数据采集程序等。

    工业控制 系统 高精度

  • 力平衡加速度传感器原理设计

     作者:zcyhero@yeah.net     摘要:本文介绍了一种力平衡加速度传感器的原理设计方法。差容式力平衡加速度传感器在传统的机械传感器的基础上,采用差动电容结构,利用反馈原理把被测的加速度转换为电容器的电容量变化,将加速度的变化转变为电压值。使传感器的灵敏度、非线性、测量范围等性能得到很大的提高,使其在地震、建筑、交通、航空等各领域得到广泛应用。     关键词:加速度 差容式 力平衡 传感器      加速度传感器是用来将加速度这一物理信号转变成便于测量的电信号的测试仪器。它是工业、国防等许多领域中进行冲击、振动测量常用的测试仪器。     1、加速度传感器原理概述     加速度传感器是用来将加速度这一物理信号转变成便于测量的电信号的测试仪器。差容式力平衡加速度传感器则把被测的加速度转换为电容器的电容量变化。实现这种功能的方法有变间隙,变面积,变介电常量三种,差容式力平衡加速度传感器利用变间隙,且用差动式的结构,它优点是结构简单,动态响应好,能实现无接触式测量,灵敏度好,分辨率强,能测量0.01um甚至更微小的位移,但是由于本身的电容量一般很小,仅几pF至几百pF,其容抗可高达几MΩ至几百MΩ,所以对绝缘电阻的要求较高,并且寄生电容(引线电容及仪器中各元器件与极板间电容等)不可忽视。近年来由于广泛应用集成电路,使电子线路紧靠传感器的极板,使寄生电容,非线性等缺点不断得到克服。     差容式力平衡加速度传感器的机械部分紧靠电路板,把加速度的变化转变为电容中间极的位移变化,后续电路通过对位移的检测,输出一个对应的电压值,由此即可以求得加速度值。为保证传感器的正常工作.,加在电容两个极板的偏置电压必须由过零比较器的输出方波电压来提供。     2、变间隙电容的基本工作原理    如式2-1所示是以空气为介质,两个平行金属板组成的平行板电容器,当不考虑边缘电场影响时,它的电容量可用下式表示:     由式(2-1)可知,平板电容器的电容量是 、A、 的函数,如果将上极板固定,下极板与被测运动物体相连,当被测运动物体作上、下位移(即 变化)或左右位移(即A变化)时,将引起电容量的变化,通过测量电路将这种电容变化转换为电压、电流、频率等电信号输出根据输出信号的大小,即可测定物体位移的大小,若把这种变化应用到电容式差容式力平衡传感器中,当有加速度信号时,就会引起电容变化 C,然后转换成电压信号输出,根据此电压信号即可计算出加速度的大小。 由式(2-2)可知,极板间电容C与极板间距离 是成反比的双曲线关系。由于这种传感器特性的非线性,所以工作时,一般动极片不能在整个间隙,范围内变化,而是限制在一个较小的  范围内,以使  与 C的关系近似于线性。     它说明单位输入位移能引起输出电容相对变化的大小,所以要提高灵敏度S应减少起始间隙 ,但这受电容器击穿电压的限制,而且增加装配加工的困难。     由式(2-5)可以看出,非线性将随相对位移增加面增加。因此,为了保证一定的线性,应限制极板的相对位移量,若增大起始间隙,又影响传感器的灵敏度,因此在实际应用中,为了提高灵敏度,减小非线性,大都采用差动式结构,在差动式电容传感器中,其中一个电容器C1的电容随位移 增加时,另一个电容器C2的电容则减少,它们的特性方程分别为:     可见,电容式传感器做成差动式之后,非线性大大降低了,灵敏度提高一倍,与此同时,差动电容传感器还能减小静电引力测量带来的影响,并有效地改善由于温度等环境影响所造成的误差。     3、电容式差容式力平衡传感器器的工作原理与结构     3.1工作原理     如图1所示,差容式力平衡加速度传感器原理框图         电路中除了所必须的电容,电阻外,主要由正负电压调节器,四运放放大器LT1058,双运放op270放大器组成。     3.2差容式力平衡传感器机械结构原理     由于差动式电容,在变间隙应用中的灵敏度和线性度得到很大改善,所以得到广泛应用。如图2所示为一种差容式力平衡电容差容式力平衡传感器原理简图。主要由上、下磁钢,电磁铁,磁感应线圈,弹簧片,作电容中间极的质量块,覆铜的上下极板等部分组成。传感器上、下磁钢通过螺钉及弹簧相连,作为传感器的固定部分,上,下极板分别固定在上、下磁钢上。极板之间有一个用弹簧片支撑的质量块,并在此质量块上、下两侧面沉积有金属(铜)电极,形成电容的活动极板。这样,上顶板与质量块的上侧面形成电容C1,下底板与质量块下侧面形成电容C2,弹簧片一端与磁钢相连,另一端与电容中间极相连,以控制其在一个有效的范围内振动。由相应芯片输出的方波信号,经过零比较后输出方波,此方波经电容滤除其中的直流电压,形成对称的方波,该对称的方波加到电容的一个极板上,同时经一次反向后的对称波形加到另一个极板上。     当没有加速度信号时,中间极板处于上、下极板的中间位置C1=C2,△C=0后续电路没有输出;当有加速度信号时,中间极板(质量块)将偏离中间位置,产生微小位移,传感器的固定部分也将有微小的位移,设加速度为正时,质量块与上顶板距离减小,与下底板距离增大,于是C1>C2,因此会产生一个电容的变化量△C,△C由放大电路部分放大,同时,将放大电路的输出电流引入到反馈网络。由于OP270的脚1和16分别与线圈两端相连,当有电流流过线圈时,将产生感应磁场,就会有电磁力产生。因为上、下磁钢之间有弹簧,所以在电磁力的作用下将使磁钢回到没有加速度时的位置,即此时的电容变化完全有加速度的变化引起,同时由于线圈与活动极板通过中心轴线相连,所以在电磁力的作用下,使中间极向产生加速度时的位移的相反的方向运动,即相当于在△C的放大电路中引入了负反馈,这样,使传感器的测量范围大大提高。因此,对于任何加速度值,只要检测到合成电容变化量△C,便能使活动极板在两固定极板之间对应一个合适的位置,此时后续电路便输出一个与加速度成正比的电压,由此电压值就可以计算出加速度的大小。     4、力平衡传感器实际应用     哈尔滨北奥振动技术是专门从事振动信号测量的专业公司,它们应用这种差容式力平衡原理开发出的力平衡加速度传感器实现的主要性能指标如下:     测量范围:±2.0g,±0.125g,±0.055g    灵敏度:BA-02a:±2.5V/g、±40.0V/g    BA-02b1:±40.0V/g(差动输出)    BA-02b2:±90.0V/g(特定要求,高灵敏度)    频响范围:DC-50Hz(±1dB)    绝对精度:±3%FS    交叉干扰:小于0.3%    线性度:优于1%    噪声:小于10μV    动态范围:大于120dB    温漂:小于0.01%g/g    电源:±12V-±15V @30.0mA    体积:Φ43x60mm     采用这种设计原理的传感器在振动信号测量领域已经得到广泛应用,该种传感器特别适合地震、建筑、军事、交通、机械、航海等领域的振动测量。

    工业控制 加速度 传感器原理 力平衡

  • 用实时时钟芯片DS1305启动数据采集系统

     摘要:介绍串行时钟芯片DS1305的功能、结构及其利用DS1305设计的电源开关电路,可使数据采集系统平时处于关闭状态。定时开启时系统上电,进行数据采集;一次工作结束时关闭开关,系统断电。     关键词:DS1305 低功耗 数据采集 引言 对于许多便携式数据采集系统,需要长时间无人看管地工作,如在石油钻井下、输油管道等场所。一般需要间隔数小时进行一个采集,这样系统大部分时间处空闲状态。虽然现在低功耗单片机的睡眠状态提供了降低功耗的一种方法,但低功耗不等于没有功耗,系统长时间工作时不得不考虑功耗的问题。 为进一步节省功耗,我们在研制一数据采集系统时,利用实时时钟芯片DS1305设计一电源开关电路。利用该开关电路,可使系统在空头时处于关闭状态,每当采集时间到,由报警信号开启单片机系统以进行数据采集,在数据采集结束时,单片机关闭开关电路,系统断电。这样系统处于关闭状态,一直到下一次开关电路报警。1 DS1305简介 DS1305是美国Dallas公司推出的串行接口带报警实时时钟。它有20脚的TSSOP、16脚的DIP两种封装方式[1],工作电压范围从2.0~5.5V。 1.1 主要特性 DS1305用二一十进制(BCD)码表示实时时钟的秒、分、小时、星期、日、月和年的时间信息,并且自动对小月(少于31天的月份)和闰年的日期进行调整,兼有带AM/PM指示12小时和24小时两种时间指示格式。图1为DS1305两种引脚的排列。 DS1305提供了主电源和后备电源的双电源引脚和一个电池输入引脚;Vcc1为主电源,Vcc2为后备电源,可充电电源接此引脚,VBAT接3V的锂纽扣电池或其它电源。VCCIF引脚用来驱动SDO和PF(电源失效输出)引脚的电平和接口的电相兼容。DS1305只支持三种电源连接方式,如图2所示。VCC1和VBAT供电时,VCC1大于VBAT0.2V时,正常对DS1305进行访问。当VCC1小于CBAT时,DS1305进入写保护。VCC1、VCC2供电时,当Vcc1比Vcc2大0.2V,Vcc1输入作为电源;当Vcc1小于Vcc2,Vcc2对DS1305供电。这种模式下,DS1305不能写保护自己。当Vcc1以+5V供电时,DS1305正常工作电流为1.28mA,时钟保持电流最大为81μA,当+2V供电时,正常工作电流为0.425mA,时钟保持电流最大为25.3μA。 DS1305支持通过SPI串行数据端口或者标准的三线接口进行时间的校正和数据的读取,可进行单字节的或连读字节束发方式的访问。SERMODE接地,串口访问模式设定为标准3线模式:SD1(串口数据输入)与SDO(串口数据输出)连接在一起作为单一的I/O引脚,它与CE、SCLK组成3线模式。SERMODE接VCC,选择SPI通信模式,具体操作可查阅有关资料。 INT0、INT1提供两个可编程的中断报警信号,可通过串行总线访问和设定秒、分、时、星期的报警时间。 X1、X2引脚直接连接标准的32.768kHz晶振,无需外接其它元件。如实时时钟有误差,可以在振荡器两端并接6pF电容进行调整。 1.2 操作方式 DS1305共有148个用户RAM,其读操作地址与写操作地址空头分开,当其高位为1时,为写操作地址空间,0为读操作地址。除实时时钟、日历寄存器和通用寄存器之外,还有作一般数据存储器用的96字节的NVRAM。对DS1305操作之前,必须对控制寄存器、状态寄存器、涓流充电寄存器进行初始化。 以下为控制寄存器(0F读,8F字): 7 6 5 4 3 2 1 0 EOSC WP 0 0 0 INTCN AIE1 AIE0 EOSC:设置为0使振荡器开始工作,设置为1,DS1305处于低功耗闲置状态。WP:写保护位,上电初始化后,WP位处于三态,在任何写操作之前,该位必须清零。INTCN:中断控制位,控制两个中断之间的联系,置位后两个中断引脚INT0、INT1分别响应各自的中断(需中断使能),清零后,中断1、2报警时间匹配都只能引发INT0输入低电平,INT1无效。ALE0、ALE1置1时中断0、1使能。 状态寄存器(读10H)只有两位IRQF0、INQF1,置位时分别表示中断时间匹配。涓流充电寄存器(读11H,写91H)控制涓流充电的特性。 DS1305标准三线模式的读写操作过程,每个字节需要16个SCLK时钟。通过CE引脚输入高电平来启动所有数据传送,前8个SCLK周期为输入写命令,后8个SCLK周期为输入或输出的数据。输入时,SCLK的上升沿数据有效;输出时,SCLK的下降沿输出数据有效。2 用DS1305开启数据采集系统 图3所示的电路是利用DS1305组成的数据采集系统。89C51与DS1305使用标准三线形式进行通信,74HC73为JK触发器,输入端J、K、CD接高电平,时钟CLK接DS1305的中断引脚INT0,输出引脚Q与三极管组成数据采集系统的开关。此外,DS1305在主电源断电时,可自动转换使用备用电池继续供电,不会造成时钟的丢失。 在采集系统上电初始化时钟芯片后,通过I/O口给JK触发器CLK引脚一个负脉冲,Q引脚输出为低,三极管截止,采集系统断电,功耗降到零。但时钟电路部分保持供电,在DS1305实时时钟到设定采集时间,由INT0引脚发出中断信号给触发器CLK一个低电平。由于CD维持高电平,造成JK触发器翻转,三极管导通,VCC给单片机上电复位。这样就将数据采集系统唤醒。可由单片机控制,导通模拟电路,启动传感器、AD转换器等进行数据采集。采集结束后,单片机保存采集结果后,通过输出引脚发送低脉冲到CLK引脚,使JK触发器翻转,三极管截止,再次使得采集系统断电,进入瞬眠状态直至下一个采集时间,如此循环。 下面例程是图3电路所示系统的DS1305的初始化和读写程序,其中CE接P1.3,I/O引脚接P1.1,SCLK引脚接P1.2。 (1)DS1305初始化程序 RESETDS:CLR P1.2:置时钟信号P1.2=0 CLR P1.3;置片选信号P1.3=0 SETB P1.3;置片选信号P1.3=1,DS1305使能 RET (2)对DS1305进行写操作程序 DSW: MOV R7,#08H ;该子程序为通过单片机写入地址或数据 WLOOP:RRC A ;A中为要写入的数据或地址 MOV P1.1,C SETB P1.2 ;时钟信号 NOP CLR P1.2 ;产生时钟脉冲 DJNZ R7,WLOOP RET (3)对DS1305进行读操作程序 DSR:SETB P1.1 ;为读数据做准备。 CLR A MOV R7,#08H RLOOP:CLR R1.2 ;写入地址后的第一个时钟脉冲下降沿开始读出数据 MOV C,P1.1 RRC A ;A中为读出的8位数据 SETB P1.2 DJNZ R7,RLOOP RET结语 用DS1305控制的电源管理系统,可使数据采集系统长时间在无人看管的环境中定时进行数据采集。根据这一思想所设计的电路,经笔者应用在远程输油管道上的压力测量,经过一个月的检验,采集时间准确,系统工作可靠。

    工业控制 芯片 ds 实时时钟 1305

  • 全数字电动机执行器的开发与应用

    摘要:介绍全数字电动执行器的组成及工作原理。开发了以80C196单片机为核心的全数字电动机行器的电机驱动电路,研究全数字电动执行器下位机运行的可靠性,以及基于CAN总线的上下位机的通信。     关键词:电动执行器 单片机 CAN总线 引言 本文所设计的全数字电动执行器,是在湘仪电子电器设备厂的9610R系列的全电子式电动执行器的电机驱动电路基础上所做出的进一步的改进。我们将控制部分用基于80C196单片机的数字控制代替原有的模拟控制,以提高具控制的精度与运行的可靠性。同时,为方便调试,增加了红外遥控的功能和基于CAN总线的通信功能,以适应现代工业控制的需要。 1 原全电子式电动执行器的特点 原9610R系列的全电子式电动执行器是以220V交流单向电源作为驱动电源,驱动电机采用单向交流电机,位置反馈采用高性能导电塑料电位器。 伺服放大器的原理如图1所示。 ①当UY=0时, K_=Uo/Ux=-[(R4+R5)/R5]×(R6/R1) ②当Ux=0时, K+=Uo/UY=[R3/(R2+R3)]×[(R4+R5)/R5]×(1+R6/R1) 根据线性叠加原理,Uo=K+UY+K_UX。 由上可知,由于电阻很难做到完全匹配,所以原9610R电动执行器存在着电机正反转不对称的问题。电机驱动电路如图2所示。    图2中,Uo为从伺服放大器来的电压信号,当Uo>0.7V时,电机正转;当Uo<-0.7V时,电机反转。C1为控制电机制动的电容。 重新设计的全数字电动执行器对电机的驱动电路进行了改进,用±12V的开关量信号的时间长短来控制电机的正反转,并实现了电动执行器的制功与反向截止功能。新的电机驱动电路如图3所示。 图3中,Ukp和Ukn分别为80C196的两个高速输出引脚,T2-1/T2-2、T3-1/T3-2、T4-1/T4-2、T5-1/T5-2、T6-1/T6-2、T7-1/T7-2分别为6个光电隔离器。当Uk为+5V高电平时,T2-1/T2-2导通,从而T*-1/T6-2导通使电机正转;当Uk由高电平到低电平的瞬间,T4-1/T4-2瞬间导通,使得T7-1/T7-2瞬间导通,电机瞬间反转,电容放电结束后电机停止;同理,当Uk为0V低电平时,电机反转。这样便实现了电机正反向控制。图3 新设计的电机驱动电路    系统输出与驱动电路之间完全实现了光电隔离,这样可提高系统的抗干扰能力和可靠性。 2 控制系统结构 以80C196KC单片机为核心的全数字电动执行器的控制系统结构如图4所示。图4中,除80C196KC单片机外,还选用了X25043实现掉电保护功能,以MAX7219驱动LED数码管显示阀位的给定值与反馈值以及阀位的状态与控制方式;同时,以改进的4~20mA恒流电路直接将阈位反馈信号转换成4~20mA的信号送至室内模拟二次表显示,以保证其模拟与数字控制的兼容性。利用80C196KC内部的A/D转换口,将阀位反馈与阀位模拟给定信号转换成10位的数字信号,用软件判断阀位故障(堵转,超限),进行故障处理(报警或停机),在控制输出端与故障处理端用MOC3061光电隔离将单片机系统与电机驱动电路隔离开来,达到抗干扰的目的。    选用1838红外遥控接收解码一体化集成芯片,接收来自遥控器的红外遥控信号。CAN控制器采用Philips的SJA1000集成芯片,CAN总线驱动选用82C250集成芯片,在SJA1000与CAN总线驱动82C250之间用6N137快速光隔进行光电隔离处理,与单片机接口实现单片机与上位机的通信功能。 各部分的主要硬件电路介绍如下。 (1)改进的4~20mA恒流电路 整个恒流电路,由1片集成的4通道运放LM324和6个精密电阻、1个可调电阻、1个瓷片电容及1个二极管组成,电路结构非常简单,电路如图5所示。图5中,R1=R2=R3=R4=R5=100kΩ,R6=200Ω,R7为0~100Ω可调电阻。 从图5电路可知:在R2、R3、R4、R5这四个电阻匹配得比较好的情况下,U1-U2=U1,通过调节R7使得R6+R7=250Ω,从而Io=U1/250Ω达到使1~5V电压转换成4~20mA的目的,且不论输出端的负载如何变化,这种关系都不会发生变化,达到恒流的目的。为为使该恒流电路可带的负载尽量大,集成运放LM324的电源最好用+18V电源。 (2)红外遥控接收电路 作为电动执行机构,在工业过程控制应用时,常常会遇到安装位置不便于调试的情况。采用红外遥控调可以说是一个很好的解决方案,可以免去常规调试所需要做的一些工作,比如打开控制盒盖进行调试线路更改等等。红外遥控接收芯片采用红外遥控接收解码一体化集成芯片1838。电路如图6所示。 图6中,电阻和电容组成去耦电路,以抑制电源干扰;除此以外不需要任何外接元件,中心频率为38kHz。但是,由于1838集成芯片的增益高且不可调,没有屏蔽,特别容易受到外界的干扰,因此必须采取屏蔽措施。最好的办法就是利用金属材料做一个屏蔽盒,将1838装入,只留红外接口在外。 我们选用一种通用红外遥控器作为电动执行机构的调试装置。80C196KC单片机首先将遥控器各按键的命令码测出,然后对它们分别赋予我们所需要的调试命令,这样就可使开发周期大大缩短。图7 CAN总线通信接口电路    (3)上下位机通信 CAN(Cantrol Area Network)是控制局域网络的简称,最早由德国BOSCH公司推出,用于汽车内部测量与执行部件之间的数据通信。其总线规范已被ISO国际标准组织制定为国际标准,广泛应用在离散控制领域。其信号传输介质为双绞线。通信速率高达1Mbps/40m,直接传输距离最远可达10km/5kbps,挂接设备最多可达110个。 CAN的信号传输采用短帧结构,每一帧的有效字节数为8个,因而传输时间短,受干扰的概率低。当节点严重错误时,具有自动关闭的功能,以切断节点与总线的联系,使总线上的其它节点及其通信不受影响,具有较强的抗干扰能力。CAN总线通信接口电路如图7的示。 80C196KC的AD15端口作为SJA1000的片选信号,故CAN控制器SJA1000所占用的地址为:8000H~80FFH。使用CAN总线收发器PCA82C250目的是进一步提高CAN总线的驱动能力。它的工作模式由RS控制引脚来提供,取决于斜率电阻(200kΩ可调电阻的阻值)。 上位机通过一块华控的公司的HK-CAN30B PCI总线非智能隔离型通信板,可对工业现场具有CAN通信接口的仪表和控制设备进行监控。 (4)掉电保护和抗干扰措施 系统实现现电保护的元件采用Maxim公司的X25043。X25043有三种常用的功能:看门狗定时器、电压监控和E2PROM,组合在单个封装内。X25043对于要求电路板空间尽可能小的该系统来说是非常适用的,电路如图8所示。 X25043的看门狗定时器对微控制器80C196提供了独立的保护系统,可选超时周期有:1.4s、600ms、200ms,也可禁用。当系统故障时,在超出所选的超时周期以后,X25043看门狗将以RESET信号作出反应,使系统复位。利用X25043低VCC检测电路,可以保护系统使之免受低电压情况的影响。当VCC降到最小VCC检测电平时,RESET变为低电平,给系统复位,直到VCC上升到最小VCC检测电平200ms为止。此外,X25043还具有512×8位串行E2PROM,使得本系统无须另外扩展数据存储器RAM。 系统的抗干扰措施包括硬件措施和软件措施。硬件上:①在输入和输出通道采用光电隔离来进行信号传输,电机驱动电路上采用光电隔离器MOC3061,在上下位机通信电路上采用快速光隔6N137;②在每一个集成电路芯片都安置一个0.01μF的陶瓷电容,以消除大部分高频干扰;③模拟地与数字地分开;④在CPU抗干扰措施上,除了配置掉电保护电路外,还配置了人工复位和自动上电复位电路。软件上:①指令冗余,在一些双字节和三字节指令之后插入两条NOP指令,以保证跑飞的程序迅速纳入正确的控制轨道;②利用软件陷阱强行将捕获到的程序引向对程序出错处理的程序;③启用80C196KC内部监视定时器(watchdogtimer);④对A/D输入信号采取软件数字滤波。 3 系统的软件设计 本系统程序框图如图9所示。首先,是程序的初始化,包括对硬件和变量的初始化。然后,程序判断全局变量RUN,若RUN=0,表示程序终止运行,则跳转到程序的末尾复位看门狗,随后再跳转到程序的前面,判断RUN标志,循环执行;若RUN≠0,则程序执行主循环,再复位看门狗。这样,通过设定RUN变量来控制程序的执行。 在中断程序程序中只处理基本的操作,如数据的输入和输出等;一些复杂的数据处理,如输入通道的软件滤波等等,都放在主循环里面处理。在主程序里,给每一个断分配一个全局变量作为中断标志,当有中断发生时,对此标志置1。在主循环里,程序依次判断每个标志位,来决定是否要执行相应的子程序,即过程或函数。在主程序中处理完相应的中断服务后,要对对应的中断标志清零。 主程序的功能包括:确定阀位和阀位状态、阀位和阀位状态的LED显示、阀位控制输出、判断阀是否堵转以保护电机避免电机过热、红外外遥控命令解码和遥控命令控制输出。在阀位控制输出上,采用以控制电机正反转的时间来控制阀位,将A/D采样的周期控制得非常短,如10ms,甚至更短。以这产的周期来控制电机的动作,在要求的阀位0.5%精度范围以内,保持电机不动作,以保证阀位控制的准确性以及避免阀位来回震动。 4 结论 通过对9610R系列全电子式电动执行器电机驱动电路和4~20mA恒流电路的改进,使执行器在模拟控制时的运行精确性和可靠性有了进一步的改善。提高了控制精度。它的智能化,使得远程维护成为可能;它的遥控系统的开发,使该电动执行器的调试更加方便。

    工业控制 全数字 电动机

  • 加密IC卡保险柜控制器的设计

    摘要:详细阐述IC卡保险柜控制器的原理、硬件设计和软件设计等内容;给出电路原理图和主程序流程图。     关键词:IC卡 单片机 保险柜 随着社会的进步和为民生活水平的提高,为们出差、旅游和度假的机会日益增加。在宾馆、饭店等居住场所都需要一保险柜来保存贵重物品和易失物品,即便在家里,也往往需要有一个地方来保存一些单据等物品。传统的手段已不能满足人们对其安全性和灵活性要求,把应用愈来愈广泛的IC卡技术应用到保险柜上,可以充分满足这方面的需求。例如,根据客户要求,可以给每个房间配备一个带有IC卡电子门锁的保险柜供他们存放物品;待客人走后,可以灵活地对保险柜的密码进行重新设置,更换IC卡。下面对我们自行设计的加密型IC卡保险柜的核心部件--控制器件一详细的介绍。 一、控制器的硬件设计 本系统的主要任务是完成对IC卡的识别和控制,因此,首先介绍一下所选用的IC卡。 1.SLE4442加密IC卡简介 目前市场上的IC卡种类较多,比较有代表性的有ATMEL公司的AT系列和SIEMENS公司的SLE系列。我们根据用户的要求和市场的供给情况选用了SIEMENS公司设计的SLE4442卡。此卡的特点是: (1)卡内有2K位的存储容量和完全独立的可编程逻辑代码存储器(PSC); (2)多存储器结构,其中包括256×8位EEPROM,32×1位PROM的4×8位EEPROM型加密存储器; (3)串行口满足ISO7816同步传递协议; (4)每一字节的擦除/写入时间为2.5ms; (5)存储器可擦除1000次以上,数据可保存10年以上。 SLE4442型IC卡的触点排列及功能如图1所示。 SLE4442芯片的传送协议包括4种模式。 (1)复位和复位响应 复位可在操作期间任何时候进行。在复位响应期间,任何开始和停止条件均被禁止。复位与复位响应时序如图2所示。    (2)命令方式 每个命令由起始条件、1个3字节长的命令和停止条件构成。命令方式时序如图3所示。 起始条件:CLK处于高状态H期间,I/O的下降沿。 停止条件:CLK处于高状态H期间,I/O的上升沿。 (3)输出数据方式    在这种试上,IC卡发送数据至接口设备IFD。在CLK上第一个下降沿后,I/O上第一位有辩效,最后一个数据位之后,需要一个额外的时钟脉冲,以设置I/O处于高状态,同时准备IC卡接收新的命令。在这种方式下,任何开始和停止条件均被禁止。输出数据方式时序如图4所示。 (4)处理方式 在第一个CLK的下降沿,将I/O线从高状态H切换至低状态L并开始处理,直到低状态L的I/O被设置成高状态H结束。在这种方式下,任何开始和停止条件均被禁止。处理方式时序如图5所示。 SLE4442卡共有7个命令,每个命令包括3个字节,其命令格式及功能如表1所列。表1 SLE4442命令 字节1控制字节 字节2地址字节 字节3数据字节 操    作 B7 B6 B5 B4 B3 B2 B1 B0 A7A0 D7D0  0  0  1  1  0  0  0  0 地址 无 效 读/从给定的字节地址至用户存储器结束  0  0  1  1  1  0  0  0 地址 输入数据 编程输入地址对应的用户存储区  0  0  1  1  0  1  0  0 无效 无 效 读保护存储器  0  0  1  1  1  1  0  0 地址 无 效 写保护存储器中的保护位  0  0  1  1  0  0  0  1 地址 无 效 读保密存储器  0  0  1  1  1  0  0  1 地址 输入数据 写/编程输入址对应的保密存储器  0  0  1  1  0  0  1  1 地址 输入数据 比较可编程密码PSC字节 这里只介绍比较可编程密码PSC命令的使用。比较过程由4个步骤组成: ①写错误计数器EC(至少1位)。地址0。密码比较结果将在错误计数器中反馈,3次密码出错IC卡被阻塞。 ②比较PSC字节1,地址1。写完错误计数器之后,以不同的命令格式送入3个密码字节。密码比较成功,将通过刷新错误计数器来识别,然后施加上操作电压,就可以对所有存储器进行读写操作了。 ③比较PSC字节2,地址2。 ④比较PSC字节3,地址3。    芯片在出厂时可根据用户的专门要求将可编程加密代码(PSC)存储器中编入一个专用代码。这样在使用时,就必须合法地得到这个代码,从而防止非法窃用或伪造卡片。 2.系统组成及工作原理 本系统的硬件主要由单片机、串行EEPROM、电磁阀和IC卡读/写插座组成。具体电路如图6所示。 电路中的单片机AT89C2051是89C51的简化体。20引脚为DIP封装。片内有2K字节闪烁存储器,128字节RAM,15条I/O线,全双工串行口。P1.0、P1.1分别作为片内精确模拟电压比较器的正、负输入端;P1.2作为IC卡的复位端;P1.3、P1.4分别作为IC卡的时钟线与数据线;P3.7作为IC卡工作指示灯的控制端;P1.5作为非法操作的声音报警控制;P3.4作为电磁阀门SW1的控制端。图中的U5是串行EEPROM--AT24C01,它的作用是用来随机存储每个IC卡的密码等;U4为电压比较器,用来监测电源电压:如果电源电压下降至4.5V左右就会产生报警信号。为了使系统更可靠地工作,采用CD4060设计了单片机"看门狗"电路,由4060定时产生一个复位脉冲,对单片机进行复位操作。整个电路设计中,充分考虑了能源的节约问题,所以在IC卡插入前整个电路的大部分芯片没有供电,只有门电路U1工作;当IC卡插入后,由于IC卡座的开关接通,促使门电路U1触发翻转,由T1导通使其他芯片得到供电。如果在使用过程中客人忘记拔出IC卡,电路除了要产生报警信号外,还会在30s(秒)后自动停止供电。二、控制器的软件设计 该软件包括三部分: (1)IC卡信息的读取及AT24C01数据的读取; (2)比较校验数据,修改存储器数据; (3)各种控制功能的实现,包括门锁开启,声、光报警等操作。 限于篇幅,这里只给出了利用51汇编语言编写的加密IC卡SLE4442的读/写程序,并给出了主程序的流程图,如图7所示。    读子程序 READ:MOV R0,#30H ;设置存放IC卡读入数据的首地址为30H LCALL RESET ;调IC卡复位子程序 MOV R2,#10H ;读IC卡数据的个数送R2 LCALL START ;调起始条件子程序 MOV R5,#00110000B ;发送读的命令码 LCALL SPOUT ;调发送一个字节子程序 MOV R5,#20H ;发送IC卡的起始地址 LCALL SPOUT MOV R5,#00H ;将数据00H发送出去 LCALL SPUT LCALL STOP ;调停止条件子程序 READ1:LCALL SPINC ;调数据采集子程序 MOV A,R6 MOV @R0,A INC R0 DJNZ R2,READ1 LCALL PLUSE ;调发送脉冲子程序 RET ;读IC卡数据子程序结束 写子程序 WRT:LCALL RESET ;写IC卡数据子程序开始,调IC卡复位子程序 MOV R2,#10H ;写入IC卡的字节个数送R2 MOV R1,#40H ;将40H为首地址的内容写入IC卡 MOV R4,#30H ;R4中放的是写到IC卡起始地址30H WRT1:LCALL START ;调起始条件子程序 MOV R5,#00111000B ;发送写的命令码 LCALL SPOUT MOV A,R4 ;发出要写入的IC卡地址 MOV R5,A LCALL SPOUT MOV A,@R1 ;写入IC卡数据 MOV R5,A LCALL SPOUT LCALL STOP ;调停止条件子程序 LCALL PROCE ;调一个编程过程子程序 INC R1 ;数据指针加1,直到数据写完 INC R4 DJNZ R2,WRT1 RET ;写子程序结束 PROCE:MOV R3,#0FFH ;一个编程过程子程序 PROC1:SETB P1.2 NOP CLR P1.2 DJNZ E3,PROC1 RET SPINC:MOV R3,#08H ;数据采集子程序 SPIN1:CLR P1.2 MOV C,P1.4 MOV A,R6 RLC A MOV R6,A ;读出的一字节内容送R6 SETB P1.2 DJNZ R3,SPIN1 RET SPOUT:MOV R3,#08H ;一字节发送子程序 MOV A,R5 SPTC1:CLR P1.2 RLC A MOV P1.4,C NOP SETB P1.2 DJNZ R3,SPTC1 RET START:SETB P1.2 ;起始条件子程序 NOP CLR P1.4 NOP RET STOP:CLR P1.2 ;停止条件子程序 NOP CLR P1.4 NOP SETB P1.2 CLR C NOP SETB P1.2 NOP CLR P1.2 RET RESET:SETB P1.3 ;复位IC卡子程序 NOP CLR P1.3 NOP RET END 保险柜的安全性能是本控制器系统设计的出发点之一,为此,在软件上,将IC卡分为母卡和子卡,母卡由管理人员掌握,子卡由客人掌握。在每次客人走后,将母卡插入保险柜,那么原来的开机子卡宣布作废,这时可以插入一个新的卡形成一个新的子卡。母卡的功能是负责生成新的子卡,而不负责开门,从而确保了保险柜的安全性能。结束语 该IC卡保险柜控制器具有结构简单、功耗低、体积小、成本低等特点,完全达到了用户的要求,目前已投入了小批量的生产。如果将现有的产品稍作改动和扩展,就能实现其他的功能。例如,给它扩展上一个语音芯片,即可进行语音提示或报警;如果将本控制器应用于防盗门就可制成IC卡防盗门,从而实现对传统防盗门的更新换代,具有广阔的市场前景。

    工业控制 控制器 保险 加密ic卡

发布文章