基于CYGNAL单片机和FPGA的舞台吊杆控制器的设计

[09-12 17:48:14]   来源:http://www.88dzw.com  单片机学习   阅读:8163

文章摘要:C8051F020单片机有UART0和UART1两个串口,其中,串口UART0与LCD显示器连接,用于把舞台吊杆运行时的位置数据送给LCD显示器。单片机利用它的SMBUS接口连接带有I2C总线接口的E2PROM(FM24C64铁片存储器),把现场数据存入存储器,以备在掉电后得新上电时能够读出吊杆的当前位置,连续控制吊杆的运动;同时利用它的普通I/O口与网卡芯片RTL8019和FPGA控制器相连,实现数据的收发。2.3 FPGA控制器的设计FPGA控制器是利用EDA方法实现的,主要用 于对霍尔传感器过来的脉冲进行计数并控制电机。由于吊杆运动过程中产生的脉冲频率高,FPGA控制器计数量大,所以本设

基于CYGNAL单片机和FPGA的舞台吊杆控制器的设计,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com

C8051F020单片机有UART0和UART1两个串口,其中,串口UART0与LCD显示器连接,用于把舞台吊杆运行时的位置数据送给LCD显示器。单片机利用它的SMBUS接口连接带有I2C总线接口的E2PROM(FM24C64铁片存储器),把现场数据存入存储器,以备在掉电后得新上电时能够读出吊杆的当前位置,连续控制吊杆的运动;同时利用它的普通I/O口与网卡芯片RTL8019和FPGA控制器相连,实现数据的收发。

2.3 FPGA控制器的设计

FPGA控制器是利用EDA方法实现的,主要用 于对霍尔传感器过来的脉冲进行计数并控制电机。由于吊杆运动过程中产生的脉冲频率高,FPGA控制器计数量大,所以本设计选择了高容量、高性能的可编程逻辑器件,即ALTERA公司的FLEX 10K系列FPGA。

图3

2.3.1 FPGA控制器的模块划分

根据系统功能要坟,FPGA控制器的顶层模块被划分为以下四个模块:两个5-32译码器、八路与门模块、八路16位可逆并行计数模块、电机控制模块,如图3所示。

两个5-32译码器模块的功能是提供与单片机的接口,实现可编程接口逻辑。八路计数模块(COUNTER8_FILE_LAST模块)包括八个单路计数模块、数据转换模块等,其功能是对霍尔传感器过来的八路脉冲信号进行可逆计数并完成16位数据与8位数据之间的转换。由于C8051F020单片机的数据长度是8位,而计数模块完成的是16位坟数,所以必须进行数据位数的转换。

2.3.2 FPGA模块的功能仿真

FPGA控制器是用ALTERA公司的FLEX10K10芯片,在MAX+PLUSII软件中进行设计综合的。根据上述的模块划分,在MAX+PLUSII中的仿真波形图如图4所示。

图4

3 舞台吊杆控制器的软件设计

舞台吊杆控制器的软件主要包括:主程序、UDP数据的传输与解析程序、串口数据的发送程序、数据存储程序等。

3.1 通信协议设计

在舞台吊杆控制系统中,远程控制端通过局域网采用UDP/IP协议给舞台吊杆控制器发送命令并接收来自控制器的数据包。UDP/IP数据包的格式如下:

IP HEADER(20 Bytes)UDP HEADER(8 Bytes)UDP DATA(Variable Length)

在使用该协议时,命令信息和状态数据都在UDP DATA数据区。为了完成控制目的,必须对这块数据区的数据制定协议,协议格式如表1所示。

表1 协议格式

命令号辅命令/错误号上行方向位下行方向位功能号位置数
1Byte1Byte2Byte2Byte8Byte4Byte

3.2 主程序设计

主程序主要完成单片机和各个功能模块的初始化、对各个功能模块的调用以及对FPGA控制器的控制。由于篇幅关系,只给出主程序的流程图,如图5所示。

4 可靠性设计

4.1 电机惯性引起误差的补偿方法

上一页  [1] [2] [3]  下一页


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习
分类导航
最新更新
热门排行