基于USB通讯的超声电机控制器设计蔡铖免,黄卫清-澳门金沙娱乐直营官网_【www.01amjs.com】澳门金沙娱乐
您好,欢迎来到澳门金沙娱乐直营官网_【www.01amjs.com】澳门金沙娱乐   请 登录免费注册
服务热线:
当前位置:澳门金沙娱乐 >> 资讯频道 >> > 技术应用 >> 基于USB通讯的超声电机控制器设计蔡铖免,黄卫清

基于USB通讯的超声电机控制器设计蔡铖免,黄卫清

时间:2017/8/11 14:21:00   来源:本网   添加人:admin

  态。

  目前USB设备的发主要体现在便携式辅助存储器设计如U盘及数码相机等的扩展存储器,一般仅仅局限于数据的采集,而忽略了客户端软件(应用程序)的设计,且数据采集速度较低U2Mbit/s),没有真正实现上下位机的数据互相通信。在发过程中一般采用把(SB接口芯片与主控制器集成的方法,此类产品通用性较差,价格较贵,不能灵活满足实际配置要求。因此,采用Philips公司的USB接口芯片ISP1581,将系统的控制部分做成一个USB设备,既满足了系统的需要,又增加了系统的灵活性。

  2控制器的硬件设计系统硬件结构图为整个系统的硬件结构图。主要有主控制器P89C668,USB接口芯片ISP1581,驱动芯片IR2110等。系统中PC机完成参数设定、数据采集及处理的功能。微控制器P89C668与PC机完成USB通信,并实现对超声电机的控制。USB接口的采用,实现了运动控制和PC机的高速数据传输。利用光电编码器进行速度反馈,实现闭环控制。

  P89C668单片机内带64KBFlash存储器,可以方便调试工作,该存储器既可并行编程也可以串行在系统编程(ISP)。设计时通过PC机的串口,将调试好的程序用编程器固化在FLASH中,这个过程称为固件编程。P89C668新增特性使其成为一个功能强大的单片机,它有5个16位捕捉/比较模块和定时器连在一起,每个模块可编程在脉冲宽度调制模式,且每个模块的占空比单独可变,因此PWM的输出可满足可调的电机控制信号的需要。

  1SP1581是Philips公司推出的一款高性价比的USB2.0接口芯片。它支持高速(480Mbit/s)操作,又支持全速(12Mbit/s)操作。内部集成有串行接口引擎(SIE)、PIE、8KB的FffO存储器、数据收发器、PLL的12MHz晶体振荡器和3.3V的电压调整器。同时,可通过软件控制与USB总线的连接(SoftConnect),ISP1581内部具有上电复位电路,支持3.3V和5V二种电源工作方式。ISP1581没有内嵌MCU,这样可根据不同系统需求,搭配不同的MCU,提高了系统的灵活性。在本系统中ISP1581与MCU的通信是通过一个高速的通用并行接口Pl,P3实现。这些高速的微控制器接口极大地提高了系统的信息吞吐量,也解决了USB1.1速度低的问题。在设计时选用了控制传输、中断传输和批量传输。

  微处理器接口类型。ISP1581内部有两种总线结构配置,由于P89C668为8位,此处选用断开总线工作模式,此时AD作数据/地址复用线,DATA仅作DMA数据总线。

  IR2110是一种性能比较优良的驱动集成电路,具有独立的低端和高端的输入通道;高端悬浮自举电源的设计;工作频率高,可达500KHZ;输出电源端(功率器件的栅极驱动电压)电压范围1020V;逻辑电源电压515V,可方便地与TTL,CMOS电平相匹配;兼有光耦隔离(体积小)和电磁隔离(速度快)的优点,可以使电机驱动电路更加紧凑。

  3控制器的软件设计系统软件部分由固件编程、计算机端设备驱动和应用程序三部分组成。

  3.1固件程序设计固件编程是整个USB数据传输系统中设备程序设计的重要部分,它直接影响着USB设备的数据传输速度。编程时采用模块化思想,每个模块实现一定功能,编程工具采用Keil公司的C51开发软件KeiluVision2,固件程序主要分为以下几块:Initc负责初始化单片机和所有的外围电路;main.c启动设备和系统的工作,负责跟踪USB事件,当事件发生时引导执行相应程序;1Srx是中断服务程序,对中断进行判定并将事件信息传递给其它的程序,这里可视为后台处理,而mam.c相当于前台处理,当前台检测到状态变化就跳到相应地方进行相关程序的处理;vender.c主要是厂商定义命令,处理厂商请求;chap9.c包含主要的USB协议,在主机和设备之间建立一个基本连接。

  固件主循环程序流程图ISP1581中断服务程序流程图值得注意的是:微控制器在上电后完成所需要的初始化工作后,通过设置ISP1581方式寄存器中的软件连接位(SOFTCT)可使外设连接到USB总线上。主机检测到有设备连接后会进行总线复位,在此期间,ISP1581将发送高速(HS)模式检测信号来判断主控制器支持的是USB2.0还是USB1.1规范,若接收到一个高速(HS)握手信号,则表明有一个HS主机与总线相连,此此ISP158I将转换到高速(HS)状态,否则仍工作在全速(FS)状态。主循环程序流程如,中断服务程序如。

  3.2设备驱动程序设计驱动程序是连接应用程序、硬件和操作系统的桥梁。驱动程序要解决设备初始化、空间配置、端口操作、中断处理、内存分配和与应用程序间通信的问题。USB设备驱动程序包括函数驱动程序和总线驱动程序两部分,这两部分之间是通过I/O管理器创建和I/O请求信息包来进行通信的。在Win32系统中,计算机把每一个设备都抽象成文件,对设备的操作也就是对文件的操作。

  3.3应用程序设计应用程序采用Microsoft的VisualC++6.0编写,USB的客户应用程序实际上是对客户端设备映像的操作,在编写的EasyISP1581Ex动态库中,提供了对ISP1581所有端点的接口函数,通过调用这些函数,不必了解复杂的USB协议也可快速完成USB应用程序开发。其中主要有:从在软件编程中需要注意以下几点:一是ISP1581的8kBFIFO是所有端点共享的,所以在设定各个端点传输包大小时,其总和不能超过8kB;二是在调试时,可根据Windows对USB设备的枚举顺序进行程序调试;第三,为做到与USB1.1兼容,在全速状态下响应主机标准请求时,需要发送全速描述符。

  4结束语该系统充分利用了USB总线的优越性,突破了控制系统与PC机之间通过以RS-232为基础的异步串行通信方式,较好地解决了通过PC机USB口与底层控制系统接口和通信问题以及日益增加的PC外设与有限主板插槽和端口之间的矛盾,作为一种高速总线接口,USB适用于多种设备,可以预见在以后的工业控制和应用中,USB将具有更广泛的应用前景。