DSP2812PWM生成QEP光电编码器解码实现
DSP2812教程 (2)
HELLODSP 版权所有 请勿用于商业用途 违者必究
Measuring our success is your success !
外部引脚 (GPIO/XINT2_ADCSOC) EVB 的多种事件 外部引脚
对于第 11 点,ADC 控制寄存器 1 的位 ACQ_PS3—ACQ_PS0 决定了采集窗口的大小,这一位控制了 SOC 脉冲的宽度,也就是一开始开关 S(t)的导通时间。SOC 脉冲的宽度是(ACQ_PS+1)*ADCLK。
1.AD 的简单知识 这部分内容是为没有接触过 AD 的朋友而准备的,如果您对其概念理解的很清楚了,可以不用阅读, 呵呵。AD,就是将模拟量转变为数字量的过程,一般分为取样、保持、量化、编码这 4 步。ຫໍສະໝຸດ S(t)+ _
图 1 取样原理
V1(t)
+ _
由于模拟信号在时间上通常是连续的,而数字信号在时间上离散的,所以转换时首先必须按数字信号 的节拍,对被转换的模拟信号采取样品。取样(Sample)的原理如图 1 所示。开关受取样脉冲信号 S(t) 控制,S(t)=0 时,开关断开,取样输出 V1(t)=0;S(t)=1 时,开关导通,V1(t)=V(t)。这样就把连续的模 拟信号 V(t)变成了一个个脉冲信号。 由于取样的结果是一系列很窄的脉冲,为了保证有足够的时间进行转换,应当将此脉冲的幅值保持 (Hold)住,直到下一次取样时刻的到来。关于量化和编码就不说了,大家可以找参考书自己看一下。 可能大家在实际的项目中,会遇到如何来定采样频率的问题,这一点,我们还应当遵循采样定理。根 据采样定理,如果取样信号 S(t)的频率 fs 大于或等于模拟信号 f(t)的最高频率 Fmax(其频带的上限频 率)的 2 倍,则输入信号 V(t)的主要特征都能够被保留下来,将来可以通过滤波处理,从 V1(t)中恢复原 来的信号 V(t)。
DSP2812管脚详解
DSP2812管脚详解XINTF信号XA[0]~XA[18] --- 19位地址总线XD[0]~XD[15] --- 16位数据总线XMP/MC` --- 1 --微处理器模式--- XINCNF7有效0 --微计算机模式--- XINCNF7无效XHOLD` ---外部DMA保持请求信号。
XHOLD为低电平时请求XINTF释放外部总线,并把所有的总线与选通端置为高阻态。
当对总线的操作完成且没有即将对XINTF进行访问时,XINTF释放总线。
此信号是异步输入并与XTIMCLK同步XHOLDA` ---外部DMA保持确认信号。
当XINTF响应XHOLD 的请求时XHOLDA呈低电平,所有的XINTF 总线和选通端呈高阻态。
XHOLD和XHOLDA信号同时发出。
当XHOLDA有效(低)时外部器件只能使用外部总线XZCS0AND1` --- XINTF区域O和区域1的片选,当访XINTF区域0或1时有效(低)XZCS2` --- XINTF区域2的片选,当访XINTF区域2时有效(低) XZCS6AND7` --- XINTF区域6和区域7的片选,当访XINTF区域6或7时有效(低)XWE` ---写有效。
有效时为低电平。
写选通信号是每个区域操作的基础,由XTIMINGX寄存器的前一周期、当前周期和后一周期的值确定XRD` ---读有效。
低电平读选通。
读选通信号是每个区域操作的基础,由xTIMINGX寄存器的前一周期、当前周期和后一周期的值确定。
注意:XRD`和XWE`是互斥信号XR/W` ---通常为高电平,当为低电平时表示处于写周期,当为高电平时表示处于读周期XREADY ---数据准备输入,被置1表示外设已为访问做好准备。
XREADY可被设置为同步或异步输入。
在同步模式中,XINTF接口块在当前周期结束之前的一个XTIMCLK时钟周期内要求XREADY有效。
在异步模式中,在当前的周期结束前XINTF接口块以XTIMCLK的周期作为周期对XREADY采样3次。
开发板DSP2812原理框图及各部分分析
开发板DSP2812原理框图及各部分分析开发板DSP2812原理框图及各部分分析T-DSP2812开发板主要集成了RS232接口、CAN 接口、网络接口、PS2接口、12864液晶接口、ADC 接口、EEPROM 、蜂鸣器、1×4键盘、流水灯等电路,囊括了几乎所有的常用接口和应用电路。
基本单元测试程序包括以下几个部分:1.蜂鸣器程序。
2 流水灯程序;3 1×4独立式按键输入显示程序;4 DSP 通过PS2端口接收显示键盘输入数据程序;5 SO12864液晶显示画面程序;6 DSP 通过RS232接口与PC 机通信程序;7 DSP 通过USB 接口与PC 机通信程序;8 PC 机通过网络接口(RJ45)和DSP 通信程序;9 256K × 16 SRAM 读写程序;10 读写EEPROM 程序开发板DSP2812原理框图如图1所示:LED 显示液晶显示10K*8 UART图1 DSP2812原理框图一.电源电路TMS320F2812采用高性能静态CMOS技术,I/O供电电压及FLASH编程电压为3.3V,内核供电电压降为1.8V(135MHz)或1.9V(150MHz),故本开发板选用TI公司的双路输出低压降(LDO)稳压器TPS767D318,将输入的5V 直流电压稳压输出一路为3.3V,一路为1.8V,每路最大输出电流为1A。
为了抑制电源线上的高频噪声和尖峰干扰,降低数字噪声对模拟电路的干扰,模拟电源和数字电源、模拟地和数字地都采用磁珠隔离。
同时板上5V、3.3V、1.8V电压都采用发光二极管指示电源状态,方便用户使用。
二.按键电路TMS320F2812采用高性能静态CMOS技术,I/O供电电压及FLASH编程电压为3.3V,内核供电电压降为1.8V(135MHz)或1.9V(150MHz),故本开发板选用TI公司的双路输出低压降(LDO)稳压器TPS767D318,将输入的5V 直流电压稳压输出一路为3.3V,一路为1.8V,每路最大输出电流为1A。
DSP2812寄存器详解
名称 地址 占用地址空间(16bit)描述EVAGPTCONA0x74001通用定时器全局控制寄存器A T1CNT 0x7401 1 定时器1T1CMPR 0x7402 1 定时器1T1PR 0x7403 1 定时器1T1CON 0x7404 1 定时器1T2CNT 0x7405 1 定时器2T2CMPR 0x7406 1 定时器2T2PR 0x7407 1 定时器2T2CON 0x7408 1 定时器2EXTCONA 0x7409 1 扩展控制寄存器A COMCONA 0x7411 1 比较控制寄存器A CAPFIFOA 0x7422 1 捕捉单元FIFOCAP1FIFO 0x7423 1 2级深度FIFO1 堆栈CAP2FIFO 0x7424 1 2级深度FIFO2 堆栈CAP3FIFO 0x7425 1 2级深度FIFO3 堆栈CAP1FBOT 0x7427 1 FIFO1CAP2FBOT 0x7428 1 FIFO2CAP3FBOT 0x7429 1 FIFO3EVAIFRA 0x742C 1 中断标志寄存器A EVAIFRB 0x742D 1 中断标志寄存器B EVAIFRC 0x742E 1 中断标志寄存器C EVAIMRA 0x742F 1 中断屏蔽寄存器A EVAIMRB 0x7430 1 中断标志寄存器B EVAIMRC 0x7431 1 中断标志寄存器CEVBGPTCONB 0x7500 1 通用定时器全局控制寄存器B T3CNT 0x7501 1 定时器3T3CMPR 0x7502 1 定时器3T3PR 0x7503 1 定时器3T3CON 0x7504 1 定时器3T4CNT 0x7505 1 定时器4T4CMPR 0x7506 1 定时器4T4PR 0x7507 1 定时器4T4CON 0x7508 1 定时器4EXTCONB 0x7509 1 扩展控制寄存器B COMCONB 0x7511 1 比较控制寄存器BACTRB 0x7513 1 比较操作控制寄存器B DBTCONB 0x7515 1 死区定时器控制寄存器B CMPR4 0x7517 1 比较寄存器4CMPR5 0x7518 1 比较寄存器5CMPR6 0x7519 1 比较寄存器6CAPCONB 0x7520 1 捕捉单元控制寄存器B CAPFIFOB 0x7522 1 捕捉单元FIFO状态寄存器B CAP4FIFO 0x7523 1 2级深度FIFO4 堆栈CAP5FIFO 0x7524 1 2级深度FIFO5 堆栈CAP6FIFO 0x7525 1 2级深度FIFO6 堆栈CAP4FBOT 0x7527 1 FIFO4栈底寄存器CAP5FBOT 0x7528 1 FIFO5栈底寄存器CAP6FBOT 0x7529 1 FIFO6栈底寄存器 EVBIFRA 0x752C 1 中断标志寄存器A EVBIFRB 0x752D 1 中断标志寄存器B EVBIFRC 0x752E 1 中断标志寄存器C EVBIMRA 0x752F 1 中断屏蔽寄存器A EVBIMRB 0x7530 1 中断屏蔽寄存器B EVBIMRC 0x7531 1 中断屏蔽寄存器C GPTCONA(通用定时器全局控制寄存器A)15 14 13 12 11 10 9 8 Reserved T2STAT T1STAT T2CTRIPE T1CTRIPE T2TOADC T1TOADC 7 6 5 4 3 2 1 0 T1TOADC TCOMPOE T2CMPOE T1CMPOE T2PIN T1PINGPTCONA 功能定义位(Bit)名称 功能描述15 Reserved Reserved14 T2STAT 通用定时器2的状态 0- 递减计数 1- 递增计数13 T1STAT 通用定时器1的状态 0- 递减计数 1- 递增计数12 T2CTRIPE T2CTRIP使能位,使能或禁止定时器2 的比较输出。
DSP2系统与实验教程_2812初识
第二章TMS320F2812的结构、资源、性能尽管TI公司将其DSP家族沿着2000、5000、6000的道路进行发展,但在TI家族,将其放到了MCU范畴里,处于高性能MCU的低端产品,再往上走就是ARM芯片了。
是因为2000系列对于纯数字信号处理方面工作较弱,但芯片集成了大量用于自动化的模块,定时器、PWM、捕获、中断、SCI、SPI、CAN模块等等,更接近于MCU,但2000系列不断地发展,从定点到浮点,双核DSP(PICCOLO系列的28035中的CLA核就是),功能更集中、管脚的复用率更大、工作频率更高,软件的硬件化更强大,芯片价格更加便宜……【PiccoloF2802x/3x/5x/6x/7x、Delfino F2833x/F2837x 】今天我就给大家介绍一下28系列的经典芯片2812。
作为2000系列大家族中的一员,我们不得不提一下2000系列的DSP第一节时钟、复位及JTAG引脚1.1 时钟2812是32位的定点DSP,它采用高性能的CMOS技术,他能达到150Mhz的频率,因此他的指令周期(机器周期)为6.67ns。
我们怎么得到150Mhz主频?通常常采用外部接入30Mhz 的晶振,配上2个24Pf的电容,接入X1/XCLKIN引脚。
在经过DSP内部的PLL倍频之后达到150Mhz的主频sysclkout。
这个频率一方面通过XCLKOUT引脚输出,另一方面作为系统内其他外设的频率输入。
The XCLKOUT signal is active when reset is active. Since XCLKOUT should reflect SYSCLKOUT/4 when reset is low, you can monitor this signal to detect if the device is being properly clocked during debug.There is no internal pullup or pulldown on the XCLKOUT pin. 1.2 电源2812采用功耗的设计模式,其内部有三类电压:内核电压:1.8vIO口电压:3.3vFlash编程电压:3.3v现在我们讨论一下IO口电压:如果我们对IO口输入的电压超过3.3v,那么就会烧坏DSP。
Dsp2812Ev_PWM模板
GpioMuxRegs.GPAMUX.bit.PWM4_GPIOA3 = 1; //设置PWM4引脚
GpioMuxRegs.GPAMUX.bit.PWM5_GPIOA4 = 1; //设置PWM5引脚
GpioMuxRegs.GPBMUX.bit.PWM7_GPIOB0 = 1; //设置PWM7引脚
GpioMuxRegs.GPBMUX.bit.PWM8_GPIOB1 = 1; //设置PWM8引脚
GpioMuxRegs.GPBMUX.bit.PWM9_GPIOB2 = 1; //设置PWM9引脚
EvbRegs.T4CON.bit.TENABLE = 1; //使能定时器T4计数操作
while(1)
{
;
}
}
void PWMGpio_init(void)
{
EALLOW;
//将GPIO中和PWM相关的引脚设置为PWM功能
GpioMuxRegs.GPAMUX.bit.T1PWM_GPIOA6 = 1; //设置T1PWM引脚
EvaRegs.T1CON.bit.TCLKS10 = 0; //使用内部时钟T1CLK
EvaRegs.T1CON.bit.TECMPR = 1; //使能定时器比较操作
EvaRegs.T2CON.bit.TMODE = 2; //连续增模式
EvaRegs.T2CON.bit.TPS = 1; //T2CLK = HSPCLK / 2 = 37.5MHz
//本例程详细写出了2812所有PWM口配置,波形输出方式,仅作为学习参考
基于TMS320F2812 DSP的SPWM波产生
基于TMS320F2812的三相SPWM波的实现一、PWM的简介与发展脉宽调制(PWM:(Pulse Width Modulation)是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。
简而言之,PWM是一种对模拟信号电平进行数字编码的方法.通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码.PWM信号仍然是数字的,因为在给定的任何时刻,满幅值的直流供电要么完全有(ON),要么完全无(OFF)。
电压或电流源是以一种通(ON)或断(OFF)的重复脉冲序列被加到模拟负载上去的。
通的时候即是直流供电被加到负载上的时候,断的时候即是供电被断开的时候。
只要带宽足够,任何模拟值都可以使用PWM进行编码。
PWM的一个优点是从处理器到被控系统信号都是数字形式的,无需进行数模转换。
让信号保持为数字形式可将噪声影响降到最小。
噪声只有在强到足以将逻辑1改变为逻辑0或将逻辑0改变为逻辑1时,也才能对数字信号产生影响。
对噪声抵抗能力的增强是PWM相对于模拟控制的另外一个优点,而且这也是在某些时候将PWM用于通信的主要原因。
从模拟信号转向PWM可以极大地延长通信距离。
在接收端,通过适当的RC或LC网络可以滤除调制高频方波并将信号还原为模拟形式。
PWM控制技术一直是变频技术的核心技术之一。
1964年A。
Schonung和H。
stemmler 首先提出把这项通讯技术应用到交流传动中,从此为交流传动的推广应用开辟了新的局面。
从最初采用模拟电路完成三角调制波和参考正弦波比较,产生正弦脉宽调制SPWM信号以控制功率器件的开关开始,到目前采用全数字化方案,完成优化的实时在线的PWM信号输出,可以说直到目前为止,PWM在各种应用场合仍在主导地位,并一直是人们研究的热点.由于PWM可以同时实现变频变压反抑制谐波的特点。
由此在交流传动及至其它能量变换系统中得到广泛应用。
DSP2812实验指导书第二部分_图文(精)
第2章F2812-A评估板硬件使用指导2.1 F2812-A评估板技术指标主处理芯片:TMS320F2812,运行速度为150M;工作速度可达150MIPS;片上RAM 18k*16bit;片上扩展RAM存贮空间64K×16Bit;自带16路12bit A/D,最大采样速率12.5msps;4路的DAC7617转换,100K/S,12Bit;两路UART串行接口,符合RS232标准;16路PWM输出;1路CAN接口通讯;片上128*16bit FLASH,自带128位加密位;设计有用户可以自定义的开关和测试指示灯;4组标准扩展连接器,为用户进行二次开发提供条件;具有IEEE1149.1相兼容的逻辑扫描电路,该电路仅用于测试和仿真; +5V电源输入,内部+3.3V、+1.6V电源管理;4层板设计工艺,工作稳定可靠;具有自启动功能设计,可以实现脱机工作;可以选配多种应用接口板,包括语音板,网络板等。
2.2 F2812 –A 评估板原理图和实物图一. F2812-A 评估板实物图图2.2.2 F2812-A 器件分布图图2.2.1 F2812-A 评估板实物图二. F2812-A 器件分布图图1.2 ICETEK-F2812-A 器件分布图三.F2812-A评估板原理框图图2.2.3 F2812-A评估板原理框图2.3 F2812-A评估板接口说明以下将详细说明这些外围接口的功能和特征定义。
首先,表2-3-1 归纳总结了这些跳线和功能分类,接口位置请参考图2.2.1表2-3-1:接口和功能分类下面将分别介绍这些接口:1. +5v 电源插座: 这个接口用于接入为整个板子供电的电源,电源电压为+5V ,标准配置的电源电流为1A ,如果不使用随板提供的电源,请注意电源的正负极性和电流的大小。
下面是这个接口的插孔示意图:+5V地(GND图2.3.1 电源插孔示意图2. 标准RS-232: 9针D 型连接器,异步串口连接器,符合RS-232规范,输出电平为正负12V .下面是9针连接器的管脚定义:图2.3.2 异步串口连接器示意图3.P1扩展插座:34芯扩展总线接口。
步进电机恒流驱动电路设计
步进电机恒流驱动电路设计摘要:经济在快速的发展,社会在不断的进步,针对步进电机在恒压驱动控制中,高频条件下容易出现电机失步,造成无法正常运转的情况,设计了基于LMD18200的电流滞环驱动电路;通过对步进电机功率放大器电路的常见形式进行研究,分析恒压与恒流驱动电路设计上的差异,理论上推导恒流驱动稳定电流及波动频率等特性;利用Matlab仿真对比恒流与恒压驱动电路相电流的上升速度,说明两种方式下平均输出力矩以及运行频率情况;以电机驱动集成芯片LMD18200实现两种驱动方式的硬件电路,分别对型号TS3641N1E2的负载电机进行测试;在不同的运行频率下,根据两种驱动电路的相电流以及运行状态,验证步进电机恒流驱动电路设计满足空间光学遥感器机构控制的要求。
关键词:步进电机;LMD18200;恒流驱动引言步进电机是广泛用于计算机控制系统和计算机外部设备的驱动元件.步进电机使用脉冲电流驱动,利用环形脉冲分配器给各绕组分配驱动脉冲,每向环形分配器输入1个脉冲,步进电机绕组的通电状态改变一次,电机的转子转过1个步距角.步进电机的运行性能例如运行频率、输出力矩等,除受电机自身性能的影响外,还直接受驱动器的制约.步进电机伺服系统具有价格低、简单、可靠等交直流伺服系统无法比拟的优点,但由于它的运行速度低、驱动器效率低和发热量大等缺点,使它的使用范围受到限制.随着现代电力电子技术、微电子技术特别是微处理器技术的发展,为步进电机驱动器性能的提高提供了条件,使步进电机驱动器的性能有了很大提高,从而使传统的步进伺服系统得到了广泛的应用.1步进电机的控制系统结构1.1DSP简介DSP即数字信号处理器,是一种专门用来实现各种数字信号处理算法的微处理器。
文中选用TI公司的TMS320F2812作为主控制芯片,片内集成了丰富的外设模块,简化了系统的硬件设计;快速的中断处理能力和硬件I/O支持,保证了系统实时响应的能力;片内具有快速RAM同时采用改进的哈佛总线结构,可以通过独立的总线对多个存储器进行并行访问而且可同时完成获取指令和数据读取操作。
DSP2812深入讲解
DSP 的发展历史大致可以分成四个阶段:萌芽阶段、成长阶段、成熟阶段、突破阶段。 萌芽阶段:1982 年以前 在这段时期里为解决 Von Neumann 结构在进行数字信号处理时总线和存储器之间的瓶颈效应,许多公司投入 大量人力和物力开展了很多探索性的工作,研制出了一些 DSP 的雏形,如 AMI 的 S2811、INTEL 的 2920、 AT&T 的 DSP-1 和 NEC 的 uPD7720。但这些产品的运算速度都太慢,而且开发工具严重不足,无法进行大 规模的开发工作,还不能称作真正意义上的 DSP。第一片 DSP 是 1982 年 TI 公司出品的 TMS320C10,它是 —个 16 位的定点 DSP,采用了哈佛(Harvard)结构,有一个乘加器和一个累加器。TMS320C10 完成—次乘加 操作需要 390ns,即在一秒钟的时间内可以完成 250 万次左右的乘加运算。或许正是因为生产出了第一个 DSP, TI 公司在此后的三十几年中一直是 DSP 界的领军人物。 成长阶段:1982-1987 年 这段时间内各公司相继研制出了自己的 DDSP 并不断地改进。如 1985 年,TI 推出了 TMS320C20,它具备单 指令循环的硬件支持,寻址空间达到 64K 字,有专门的地址寄存器,一次乘加运算只需耗时 200ns。1987 年, MOTOROLA 公司推山了 DSP56001,采用 24 位的数据和指令,有专门的地址寄存器,可以循环寻址,累加 器有保护位,一坎乘加运算只需耗时 75ns。此外,在这段时期中还有一些代表产品,如 AT&T 的 DSPl6A、 AD 的 ADSP-2100,TI 的 TMS320C50。 成熟阶段:1987-1997 年 在这个阶段里各公司不断借鉴相互的优点,并完善自身的设计,推出了特点分明的产品,如 TI 的 TMS320C54 系列、AD 的 ADSP2100 系列、Lucent(前身为 AT&T)的 DSPl600 系列和 MOTOROLA 的 DSP56000 系列。 它们在供电上都支持 3.3v,片上的存储器也较大,都有 JTAG 模块支持用户在线调试。另外,TI 等公司还专门 提供 DSP 的内核,为一些专用集成电路(ASIC)的开发提供了空间。此外,在成熟阶段还首次出现了多处理核 的 DSP,如 TI 的 TMS320C80 和 MOTOROLA 的 MC68356 等,虽然它们的推出在商业上并不算成功,但却 指明了一个有潜力的发展方向。 突破阶段:1997 年直至现在 这段时间里 DSP 的发展非常迅速,各公司相继建立了自己从定点到浮点,从低端到高端,从通用到专用完整 的产品系列,并且在 DSP 设计上有了大的飞跃,推出了一些性能突出的产品。很多公司相继采用先进技术研 制了计算性能很高的 DSP,如 AD 的 SHARC 系列、TI 的 TMS320C6000 系列、MOTOROLA 和 Agere(前身 为 Lucent 微电子)的 StarPro 等,每秒钟可以完成 1G 条以上的指令,计算速度惊人。TI 公司还研制出功耗最 小的 DSP TMS320C55 系列,为便携式设备提供了一个明智的选择。 回顾 DSP 发展的二十几年,也正是电子、信息和微电于技术快速发展的二十年,正是后者为 DSP 提供了必要 的技术支持和应用的广阔空间,使得 DSP 及其相关的技术日益受到人们的重视。
DSP2812EV管理器(转)
第11章 事件管理器(EV)
·277·
EVA/EVB 的启动转换信号(SOC)可以送至外部引脚(EVASOC),该信号为外部 ADC 的接口所用。EVASOC 和 EVBSOC 可以单独由 T2CTRIP和 T4CTRIP多路传输。
9.功率驱动保护中断( PDPINTx,x=A 或 B)
事件管理器(EV)的器件接口如图 11-1 所示。事件管理器 A(EVA)的功能模块图 如图 11-2 所示,事件管理器 B(EVB)的功能模块图与该图类似,只是模块及信号的命名 有所不同。
1.通用目的(GP)定时器 事件管理器各有两组 GP 定时器。GP 定时器 x(x=1 或 2 属于 EVA;x=3 或 4 属于 EVB) 包括: (1)1 个 16 位的定时器 TXCNT,为增/减计数器,TXCNT 可以读/写。 (2)1 个 16 位的定时器比较寄存器 TxCMPR(带阴影的双缓冲寄存器),可以读/写。 (3)1 个 16 位的定时器周期寄存器 TxPR(带阴影的双缓冲寄存器),可以读/写。 (4)1 个 16 位的定时器控制寄存器 TxCON,可以读/写。 (5)可选择的内部或外部输入时钟。 (6)一个对于内部或外部输入时钟可编程的预定标因子。
外部行程输入
PDPINTA*
PDPINTB*
外部 ADC SOC 触发输出
EVASOC
EVBSOC
注:* 在 C240x 的兼容模式下,引脚 T1CTRIP / PDPINTA功能为 PDPINTA,而引脚 T3CTRIP / PDPINTB功能为
PDPINTB
2.全比较单元 每个事件管理器都有 3 个全比较单元。这些比较单元使用定时器 1 为其提供时基,通
基于DSP2812的全数字交流伺服系统的实现
基于DSP2812的全数字交流伺服系统的实现赵香桂;董海鹰;赵宇坤【摘要】以TMS320F2812为主控制器,设计了一种全数字化的交流伺服系统.给出了系统的硬件组成和软件实现方法.并采用了位置环、速度环、电流环的三闭环控制策略和转子磁场定向矢量控制方案,充分利用了DSP的高速运算能力和丰富的片内外资源,对系统进行了加栽实验和位置伺服控制实验.实现了交流电机的全数字伺服控制.实验结果表明该系统具有良好的动态和静态特性,可广泛用于电气传动装置中.【期刊名称】《电气传动自动化》【年(卷),期】2010(032)006【总页数】4页(P23-25,47)【关键词】交流伺服系统;矢量控制;三闭环;DSP【作者】赵香桂;董海鹰;赵宇坤【作者单位】兰州交通大学,自动化与电气工程学院,甘肃兰州,730070;兰州交通大学,自动化与电气工程学院,甘肃兰州,730070;兰州交通大学,自动化与电气工程学院,甘肃兰州,730070【正文语种】中文【中图分类】TM383.4+21 引言随着微电子技术的不断发展,数字伺服系统逐步取代了传统的模拟式、模数混合式伺服系统,并在许多高科技领域得到了非常广泛的应用,如数控机床、工业机器人大规模集成电路、雷达以及军用武器随动系统等[1-2]。
研究高速、高精度、高可靠性和强抗干扰能力的嵌入式微控制器的全数字伺服系统,已成为当代电机伺服控制系统发展的趋势。
TMS320F2812 DSP芯片功耗低、指令执行周期短、外设资源丰富,是用于电机控制的高性能、多功能的32位定点芯片[3]。
本文基于DSP2812,采用矢量控制技术,实现对交流电机的全数字位置伺服控制,并对实验结果进行了分析。
2 交流伺服电机的控制方案异步电机的动态数学模型是一个高阶、非线性、强耦合的多变量系统。
为了使调速系统具有较高的动态性能,本文采用按转子磁场定向的矢量控制方案。
矢量控制技术利用坐标变换将三相系统等效为两相系统,再经过按转子磁场定向的同步旋转变换实现对定子电流励磁分量与转矩分量之间的解耦,从而达到对交流电动机的磁链和转矩分别控制的目的,这样就可以将一台三相异步电动机等效为直流电动机来控制,因而可获得与直流调速系统性能相媲美的静态及动态性能[4]。
TMS32OF2812与DIP-IPM的通用电路设计.doc
TMS 32OF2812与DIP-IPM的通用电路设计引言:随着电子技术的高速发展,功耗与节能为电子技术提出了新的要求。
在电力电子技术方面,交流电机的变频调速更成了电机控制的主流,变频调速是利用电力半导体器件的通断作用将工频电源变换为另一频率的电能控制装置。
主要采用交流一直流一交流方式,即把工频交流电源通过整流器转换成直流电源,然后再把直流电源转换成频率、电压均可控制的交流电源。
变频调速技术凭借其节能降耗、改善工艺和提高控制精度等方面的优点,使得变频调速技术发挥了交流电机本身固有的优点,解决了交流电机调速性能先天不足的问题。
本文先对TMS320 F2812芯片和智能功率模块进行了详细的介绍,根据他们的特点设计了通用变频电路设计方案。
在实际的应用中可以根据控制方式的需要,制定不同的控制方式,广泛应用于三相异步电机的SVPWM控制。
1 变频调速方式交流电机的转速为n1=60f/p,再根据异步电机转差率s=(n1-n)/n1,可知交流异步机的转速公式为:n=n1(1-s)=(1-s)60f/p,其中P为极对数,s为转差率,f为定子供电频率,当p和s为定植时,要改变电机的转速,只需要改变f就可以了,根据控制方式的不同,一般可以分为三种调速方式:在变频调速过程中保持定子电压和定子供电频率之比为常数,即恒磁通变频调速,保持定子电流不变的恒流控制调速方式,保挣恒电磁通调速方式。
在具体控制上,可以采用VVVF(Variable Voltagevariable Frequency)变频或矢量控制变频控制方式,在电路设计时,需要实时采样相电压以及各相电流,根据控制方式的不同,可以选用不同的算法程序。
2 高速DSP芯片TMS320F2812介绍TMS320F2812DSP是德州仪器公司(TI)推出的一款32位高性能数字信号处理器,它是专为控制设计的高速DSP芯片,拥有峰值每秒运行150万条指令(MIPs)的处理速度和单周期完成32×32位MAC运算的功能,再加上两个事件管理器(E VA和EVB)、片上Flash以及片上RAM和AD转换模块,能够实现实时快速的数字信号处理算法,在三相异步电机控制系统中广泛的被采用。
DSP2812教程(8)
DSP2812教程(8)第4课F2812⽚内资源、存储器映射以及CMD⽂件的编写作者:顾卫钢谢芬(HELLODSP资深会员)从今天开始,我们的课程终于进⼊F2812的核⼼了,呵呵。
在今天的课程中,我们将带领⼤家⼀起学习2812的⽚内资源,初步了解它究竟有哪些本事,能拿来⼲些什么,然后⼀起了解2812存储器的结构,统⼀编址的⽅式、存储器映射关系,并重点分析CMD⽂件,以期望消除⼤家对CMD⽂件的迷惑,在⾃⼰编写程序的时候会修改CMD⽂件中的部分内容,从⽽满⾜⾃⼰设计时的需求。
1.F2812的⽚内资源我们知道,TMS320F2812是32位的定点DSP,它既具有数字信号的处理能⼒,⼜具有强⼤的事件管理能⼒和嵌⼊式控制功能,特别适合⽤于需要⼤批量数据处理的测控领域,例如⾃动化控制、电⼒电⼦技术、智能化仪表、电机伺服控制。
下⾯是F2812的内部资源框图。
图1 TMS320F2812内部资源框图2812采⽤了⾼性能的静态CMOS技术,时钟频率可达150MHZ(6.67ns),其核⼼电压为1.8V,I/O⼝电压3.3V,Flash编程电压也为3.3V,所以我们在设计2812电源部分的时候,需要将常⽤的5V电压转换成1.8V和3.3V的电压之后,才能供给2812。
具体的设计我们将会在以后的硬件设计内容⾥进⾏探讨。
让我们⼀起来看看图1,最左边的A(18-0)和D(15-0)是表⽰2812外扩存储器的能⼒,2812外扩的存储空间最⼤是219*16 bit,就是说最多只能扩512K个存储单元,每⼀个存储单元的位数为16位。
从图中我们也可以看到,F2812⽀持JTAG边界扫描(Boundary Scan),这也是为什么我们的仿真器都是采⽤JTAG⼝的原因了,在这⾥,提醒⼤家⼀点的就是,仿真的时候,JTAG⼝的⽅向不能插反,如果插反的话会将仿真器烧坏。
我们所使⽤的14针JTAG⼝的第6针是空脚,所以⼀般情况下仿真器JTAG线的第6针是填针的,同时在板⼦上的第6脚是拔空的,这样可以防⽌您插反JTAG⼝,以避免不必要的损失。
基于2812DSP的PWM产生方法
基于2812DSP的PWM产生方法基于TMS320F2812 DSP的PWM产生方法PWM(Pulse-Width Modulation)即脉宽调制技术,广泛运用于各种工业控制中,现需要用TMS320F2812DSP产生该波形,主要通过如下几点来实现。
一、硬件芯片选型依托现有条件,选用合众达的eZ dsp TMS320F2812开发平台作为目标板。
首要关注其datesheet和电路图。
如图1所示,产生的PWM波通过目标板P8插针口的第15根脚输出,测试时需要通过示波器检查该口的输出状态。
事件管理器(Event Manager)是产生PWM波的核心模块,包括通用定时器、比较单元、捕获单元、QEP电路等,这里主要用到通用定时器中的定时器1。
图2表示EV A中通用定时器1的相关寄存器,对这些寄存器进行配置是产生PWM 波的必经之路。
二、软件编程实现在了解2812DSP各相关寄存器的前提下,通过在CCS3.3环境下编程可实现。
S3.3软件环境学习一个完整的DSP工程文件需要由头文件(.h)、库文件(.lib)、源文件(.c)、和CMD文件共同组成。
在实际编程中,我们通常是打开某一个例程工程文件,其中很多头文件已经被默认添加进去,一般不需要改动,源文件在相应地方进行改动即可。
2.编程实现DSP芯片在一定时钟节拍驱动下才能正常工作,因此需要对系统时钟进行配置,通常使用外部时钟,并将PLL控制寄存器PLLCR取最大值10,送至CPU 的时钟则为150MHz。
主函数流程图如图3所示:初始化包括:系统时钟配置、PIE控制寄存器初始化、PIE中断向量表初始化、GPIO口初始化、事件管理器EV A初始化。
开中断实际上是定时器T1开始计数。
在通用定时器初始化的时候便将中断打开。
当T1CNT和T1CMPR的值相等时发生比较匹配事件,如果T1控制寄存器T1CON的TWCMPR为1,定时比较器被使能,且GPTONA的位TCMPOE为1时,定时器比较输出被使能,那么Hz PR T TCLK f 12106??=PR T CPMRT PR T D 111-=Hz HSPCLK 5.372=T1PWM_T1CMP 引脚就会有PWM 波形输出。
光电脉冲编码器的工作原理
光电脉冲编码器的工作原理
光电脉冲编码器是一种用于测量位置和运动的设备,它通过光电效应
将机械运动转换为电信号,并以数字信号输出。
它常常被广泛应用在
数控机床、机器人、印刷机、包装机、自动化装置等行业。
光电脉冲编码器的工作原理是利用光电效应将移动、旋转等机械运动
转化为电信号,最终以数字信号输出。
编码器由光电转换器和编码盘
组成。
编码盘通常由透明或不透明的圆盘、线盘或方形盘组成,盘上
刻有等距的黑白线条或黑白点,称之为编码标记。
光电转换器通常由
光电二极管和光敏二极管等组成,将光信号转化为电信号。
当运动物体经过编码器时,光电转换器将光线作为输入信号,探测编
码盘上的编码标记,转化为电信号输出。
同时,测量器将测量过程中
的时间进行一定的分析和计算,得到机械运动的速度、距离和方向等
相关信息,最终将其转化为数字信号,并通过接口输出。
接口输出可
为RS-422, RS-485, TTL等。
与传统的机械式编码器相比,光电脉冲编码器具有高分辨率、稳定性好、可靠性高、精度高等特点。
但同时,它也有一些缺点,如高成本、复杂的安装、易受到光干扰等。
因此在选择使用时,需要考虑实际应
用需求和经济成本。
总之,光电脉冲编码器是一种灵敏度高、精度高、信号稳定、响应速度快的位置测量和运动测量设备,广泛应用于各种机械加工、自动化装置和生产线等领域。
DSP2812PID
F2812PID+PWM控制电机程序EV A(通用定时器1,3(3是采用周期);比较单元1,2;QEP(1,2)EVB(通用定时器2,4;QEP(3,4))#include "DSP28_Device.h"#define INA1 GpioDataRegs.GPADAT.bit.GPIOA11#define INA2 GpioDataRegs.GPADAT.bit.GPIOA12#define INB1 GpioDataRegs.GPADAT.bit.GPIOA13#define INB2 GpioDataRegs.GPADAT.bit.GPIOA14//PIDint Len,Len_1,Ren,Ren_1; // 左右轮误差量int Lyn,Lyn_1,Lyn_2,Ryn,Ryn_1,Ryn_2; // 左右轮反馈值int Lun,Lun_1,Run,Run_1; // 左右轮输出值int D_Lunp,D_Luni,D_Lund,D_Runp,D_Runi,D_Rund;int Lkp,Rkp; // 左右轮比例系数int Lki,Rki; // 左右轮积分系数int Lkd,Rkd;int ski,hki;int vl=0;int vr=0;unsigned int speed_measure; //采样完成标志,通讯完成标unsigned int comm_old[2];int maxv=255;int speedrun[3000];void Sys_int();void Sysclk_int();void IO_int();void Eva_int();void wat_int();void PID();void PWM_out();interrupt void T3pint_isr(void);//PWM_outvoid main(){unsigned int k=0;Sys_int();//系统初始化//PID参0数值Lkp =80;//左轮速初使给定PRkp =60;//右轮速初使给定PLkd =30;//右轮速初使给定DRkd =100;//右轮速初使给定Dhki=10;ski=2;speed_measure=0;Len=0;Len_1=0;Ren=0;Ren_1=0;Lun=0;Lun_1=0;Run=0;Run_1=0;Lyn=0;Lyn_1=0;Lyn_2=0;Ryn=0;Ryn_1=0;Ryn_2=0;comm_old[0]=10;comm_old[1]=0;EvaRegs.T1CON.bit.TENABLE=1;//使能定时器1~4 EvaRegs.T2CON.bit.TENABLE=1;EvbRegs.T3CON.bit.TENABLE=1;EvbRegs.T4CON.bit.TENABLE=1;DINT;IER = 0x0000;IFR = 0x0000;/*设置中断服务程序入口地址*/EALLOW;PieVectTable.T3PINT = &T3pint_isr;EDIS;/*开中断*/IER |= M_INT4;//为何如此设置,哪个中断使能哪?PieCtrl.PIEIER4.bit.INTx4 = 1;EINT;ERTM;while(1){EALLOW;SysCtrlRegs.WDCNTR=0x0055;//看门狗计数器清零SysCtrlRegs.WDCNTR=0x00AA;EDIS;if(speed_measure==1){if (k<1000){speedrun[k]=vr;k++;}speed_measure=0;DINT;//关中断PID();PWM_out();EINT;//开中断}}} //END MAINvoid Sys_int(){DINT;SysCtrlRegs.WDCR= 0x0068; //屏蔽看门狗,使用晶振时钟OSCCLK/512(WDCR.2~0) Sysclk_int();InitPieCtrl();InitPieVectTable();IO_int();Eva_int();wat_int();SysCtrlRegs.WDCR=0x0028;//使能看门狗(WDCR.6)EINT;//开放全局中断}//晶振初始化;外接30MHz晶体,初始化锁相环:外部晶体4倍频120MHz。