基于LonWorks技术步进电机智能控制器硬件设计
时间:06-30
来源:互联网
点击:
1 引 言
步进电机是一种将脉冲信号转换为直线或角位移的伺服执行元件,由于其具有结构简单、运行可靠、控制方便、控制性能好,并且具有步距值不受诸如电压和温度变化的影响、误差不长期积累等优点,所以在仪器仪表、机器人、数控机床、工业控制、楼宇自动化等领域得到了越来越广泛的应用。其基本原理是每施加一个脉冲信号,其转轴就转过一定的角度,称为一步。随着输入到步进电机的脉冲数增加,直线或角位移也随之增加。如果将脉冲信号的频率变大,则步进电机的旋转速度就随之而变快,反之则变慢。
为了实现步进电机的运动控制,较多采用的一种方案是以传统的单片机作为控制系统的微处理器,通过一些大规模集成电路来控制其脉冲输出频率和脉冲输出数,实现步进电机的速度和位置控制。但是,这种方案中微处理器本身不具备网络通讯能力,要想和上位机器连接需要加上其他的通讯接口且可靠性较差,实现起来麻烦,并且在使用一些智能控制算法时,传统单片机不容易实现并且程序处理速度也成为制约提高系统实时控制性的一个瓶颈。 由于LonWorks技术将底层控制和网络通讯结合起来,并且通过其主要部件神经元芯片来进行控制,可以在局域或远程计算机上(简称上位控制机)随时将控制信号传递给LonWorks智能控制器,实现对步进电机旋转角度和速度控制。同时由于采用NeuronC进行编程,可以很方便地实现智能控制算法,并将程序下载到所设计的智能控制器中,所以采用LonWorks技术进行步进电机的控制系统的设计将具有更高的精度、灵活性、适应性并且可以通过网络对步进电机进行实时监视和控制。
2 整体结构设计
要采用LonWorks技术进行步进电机智能控制器的设计,首先必须进行整体结构的规划,这里采用的控制方法分为两种:
(1)让步进电机按照上位控制机发出的控制信号进行,包括转角的大小和运行的速度。
(2)让步进电机按照外部测量和控制设备的信号进行运动。 设计的智能控制器的整体结构框图如图1所示。执行/停止按钮接在神经元芯片的IO4脚,用来控制电机按照控制器内部的程序进行运行。正向点动按钮接神经元芯片的IO5脚,用来手动控制步进电机进行正向点动,每步的点动时间由程序来决定,按一下点动一下,如按住按钮不放,则进行连续点动。反向点动按钮接神经元芯片的IO6脚,用来手动控制步电机进行反向点动,控制方式同正向点动按钮。所有按钮一端接470Ω的电阻后接+5V电源,另一端接神经元芯片的相应的IO口引脚并同时接地。A/D转换电路和神经元芯片的IO7,IO8,IO9,IO10脚相联,用来将测量装置的模拟量信号转为数字信号再送人神经元芯片进行处理。IO0~IO3用于提供步进电机驱动电路所需要波形信号。
具体的操作过程是这样的,首先将设计好的程序进行编译,然后下载到控制器中,按下执行按钮,步进电机将按照下载的程序控制方法进行运动,同时我们也可以实时地在上位控制机上向智能控制器传递控制信号,让步进电机在控制器内部程序的控制之下,按照我们的指定的运动方式进行。
3 具体硬件的设计
3.1 LonWorks控制模块的设计
使用LonWorks技术进行智能控制器离不开控制模块,他是LonWorks智能控制器的最基本的一个控制单元,按照Echelon公司的思想,控制模块实际上是设计LonWorks智能节点的一个通用模块,是与外部接口电路分离的不同单元。图2是所设计的控制模块的电路板图。
神经元芯片采用Toshiba公司的TMPN3150,存储器采用Atmel公司的AT29C256,收发器选用Echelon公司的FTT-10A自由拓扑双绞线收发器,2中左20插脚分别与神经元;S片的11个I/O,RESET,SERVICE,电源及接地引脚等直接相连,右6个插脚中间2个用来接双绞线接口。在智能控制器的开发时,控制模块只需设计一次,其他同类型的产品都可以采用。
3.2 A/D转换电路的设计
为了让控制器能够根据测量的模拟信号进行步进电机的控制,所以必须将模拟信号转变成数字信号,这里考虑到步进电机的控制精度,所以必须选用精度躬高的A/D转换芯片。另外考虑到神经元芯片和A/D芯片在进行连接时,使用串行方式可以节省神经元芯/的IO端口,所以选用Maxim公司的8路输入12b精度的高速、低功耗串行A/D转换器MAXl86。可以有单+5V电源输人或者土5 V电源输入。模拟输入可以通过软件配置为双极性/单极性、单端/差分工作方式。MAXl86具有四线串行接口,可以直接与SPI、QSPI或Microwire外部逻辑的设备直接相连,MAXl86内部有+4.096V参考电压源。
图3是A/D转换芯片的接口电路以及和神经元芯片的引脚连接图,神经元芯片的IO7在这里用于MAXl86的片选,IO8提供时钟信号输出,IO9用于串行数据输出,IO10用于串行数据输入。MAXl86的控制字的写入与转换数据的输出通过串行数据线完成,其各个输入通道由控制字进行选择。模拟信号输入范围是0~十4.096V。需要说明的是模拟信号的输入必须加上信号调理电路进行信号的转换、放大和缩小等以适应量程的需求。
步进电机是一种将脉冲信号转换为直线或角位移的伺服执行元件,由于其具有结构简单、运行可靠、控制方便、控制性能好,并且具有步距值不受诸如电压和温度变化的影响、误差不长期积累等优点,所以在仪器仪表、机器人、数控机床、工业控制、楼宇自动化等领域得到了越来越广泛的应用。其基本原理是每施加一个脉冲信号,其转轴就转过一定的角度,称为一步。随着输入到步进电机的脉冲数增加,直线或角位移也随之增加。如果将脉冲信号的频率变大,则步进电机的旋转速度就随之而变快,反之则变慢。
为了实现步进电机的运动控制,较多采用的一种方案是以传统的单片机作为控制系统的微处理器,通过一些大规模集成电路来控制其脉冲输出频率和脉冲输出数,实现步进电机的速度和位置控制。但是,这种方案中微处理器本身不具备网络通讯能力,要想和上位机器连接需要加上其他的通讯接口且可靠性较差,实现起来麻烦,并且在使用一些智能控制算法时,传统单片机不容易实现并且程序处理速度也成为制约提高系统实时控制性的一个瓶颈。 由于LonWorks技术将底层控制和网络通讯结合起来,并且通过其主要部件神经元芯片来进行控制,可以在局域或远程计算机上(简称上位控制机)随时将控制信号传递给LonWorks智能控制器,实现对步进电机旋转角度和速度控制。同时由于采用NeuronC进行编程,可以很方便地实现智能控制算法,并将程序下载到所设计的智能控制器中,所以采用LonWorks技术进行步进电机的控制系统的设计将具有更高的精度、灵活性、适应性并且可以通过网络对步进电机进行实时监视和控制。
2 整体结构设计
要采用LonWorks技术进行步进电机智能控制器的设计,首先必须进行整体结构的规划,这里采用的控制方法分为两种:
(1)让步进电机按照上位控制机发出的控制信号进行,包括转角的大小和运行的速度。
(2)让步进电机按照外部测量和控制设备的信号进行运动。 设计的智能控制器的整体结构框图如图1所示。执行/停止按钮接在神经元芯片的IO4脚,用来控制电机按照控制器内部的程序进行运行。正向点动按钮接神经元芯片的IO5脚,用来手动控制步进电机进行正向点动,每步的点动时间由程序来决定,按一下点动一下,如按住按钮不放,则进行连续点动。反向点动按钮接神经元芯片的IO6脚,用来手动控制步电机进行反向点动,控制方式同正向点动按钮。所有按钮一端接470Ω的电阻后接+5V电源,另一端接神经元芯片的相应的IO口引脚并同时接地。A/D转换电路和神经元芯片的IO7,IO8,IO9,IO10脚相联,用来将测量装置的模拟量信号转为数字信号再送人神经元芯片进行处理。IO0~IO3用于提供步进电机驱动电路所需要波形信号。
具体的操作过程是这样的,首先将设计好的程序进行编译,然后下载到控制器中,按下执行按钮,步进电机将按照下载的程序控制方法进行运动,同时我们也可以实时地在上位控制机上向智能控制器传递控制信号,让步进电机在控制器内部程序的控制之下,按照我们的指定的运动方式进行。
|
3 具体硬件的设计
3.1 LonWorks控制模块的设计
使用LonWorks技术进行智能控制器离不开控制模块,他是LonWorks智能控制器的最基本的一个控制单元,按照Echelon公司的思想,控制模块实际上是设计LonWorks智能节点的一个通用模块,是与外部接口电路分离的不同单元。图2是所设计的控制模块的电路板图。
|
神经元芯片采用Toshiba公司的TMPN3150,存储器采用Atmel公司的AT29C256,收发器选用Echelon公司的FTT-10A自由拓扑双绞线收发器,2中左20插脚分别与神经元;S片的11个I/O,RESET,SERVICE,电源及接地引脚等直接相连,右6个插脚中间2个用来接双绞线接口。在智能控制器的开发时,控制模块只需设计一次,其他同类型的产品都可以采用。
3.2 A/D转换电路的设计
为了让控制器能够根据测量的模拟信号进行步进电机的控制,所以必须将模拟信号转变成数字信号,这里考虑到步进电机的控制精度,所以必须选用精度躬高的A/D转换芯片。另外考虑到神经元芯片和A/D芯片在进行连接时,使用串行方式可以节省神经元芯/的IO端口,所以选用Maxim公司的8路输入12b精度的高速、低功耗串行A/D转换器MAXl86。可以有单+5V电源输人或者土5 V电源输入。模拟输入可以通过软件配置为双极性/单极性、单端/差分工作方式。MAXl86具有四线串行接口,可以直接与SPI、QSPI或Microwire外部逻辑的设备直接相连,MAXl86内部有+4.096V参考电压源。
图3是A/D转换芯片的接口电路以及和神经元芯片的引脚连接图,神经元芯片的IO7在这里用于MAXl86的片选,IO8提供时钟信号输出,IO9用于串行数据输出,IO10用于串行数据输入。MAXl86的控制字的写入与转换数据的输出通过串行数据线完成,其各个输入通道由控制字进行选择。模拟信号输入范围是0~十4.096V。需要说明的是模拟信号的输入必须加上信号调理电路进行信号的转换、放大和缩小等以适应量程的需求。
步进电机 电压 机器人 自动化 单片机 集成电路 电阻 电路 Atmel 收发器 Maxim 电流 传感器 二极管 电子 比较器 相关文章:
- 基于ARM与DSP的嵌入式运动控制器设计(04-25)
- 用MSP430单片机实现微波成像系统的扫描控制与数据采集(06-20)
- 基于可调式模拟激光脉冲的激光告警器在线检测仪(10-20)
- 单片机对仪表步进电机的细分控制(10-20)
- 使用L6506 实现步进电机的电流控制(12-10)
- 基于嵌入式Web服务器的智能温室监控系统(01-25)


