当前位置:首页 > 单片机 > 单片机
[导读]随着电子技术的不断进步,特别是3C(计算机、通信、消费电子)的飞速发展,电子设备日趋数字化、小型化和集成化,嵌入式芯片逐渐成为设计开发人员的首选。DSP作为嵌入式芯片的典型代表之一,在信息产业领域得到了广泛应用。

引言

随着电子技术的不断进步,特别是3C(计算机、通信、消费电子)的飞速发展,电子设备日趋数字化、小型化和集成化,嵌入式芯片逐渐成为设计开发人员的首选。DSP作为嵌入式芯片的典型代表之一,在信息产业领域得到了广泛应用。

DSP虽然为3C产品的开发提供了很好的硬件支撑平台,但设计者仍得花费一定的时间去掌握DSP内部各种寄存器的正确设置、软件编程方法以及控制算法设计,这必然会增大产品开发难度,延长产品开发周期,从而影响开发效率。Matlab公司最新推出的针对DSP应用控制系统而开发的嵌入式目标模块Embedded Target for TI C2000 DSP即可解决上述问题,用户通过使用该模块,不仅可以进行电路的系统级仿真,还可编译生成相应的C语言代码,并下载到目标板,直接运行程序,进行算法的探索与设计思路的验证,提高开发效率。

应用流程

作为一种专用的集成开发环境,Matlab公司最新推出的Embedded Target for TI C2000 DSP 开发平台能够让设计人员直接进行(半)实物仿真、算法的探索与研究,以及产品可靠性的验证,从而有效地减少了设计开发过程中的消耗,加快了原型开发的速度。该平台有如下几个优点:

       1) 在TI C2000 DSP 上自动测试、执行Simulink仿真模型;

       2) 提供模块化的系统和功能,比如PWM、ADC、CAN以及目标板载内存等;

       3) 生成文档化的易读可编辑的C语言代码,并生成Code Composer Studio项目文件;

       4) 在F2407 eZdsp评估板和F2812 eZdsp评估板上进行自动化实时测试;

       5) 对TI推出的IQmath Library提供模块化的支持,可以用于仿真和代码生成;

       6) 可以进行定点系统的设计、仿真、自动定标和代码生成工作。

Embedded Target for TI C2000 DSP提供了将MATLAB和Simulink与TI eXpressDSP工具、TI C2000 DSP控制器集成在一起进行系统开发的手段。通过Real-Time Workshop和TI的开发工具将Simulink模型转变为实时C代码,这样就可以利用这些产品在TI C2000 DSP系统上(如F2812 eZds评估板和F2407 eZdsp评估板等)实现自动代码生成、产品原型和嵌入式系统实现,并可实时进行算法验证,极大地提高了开发效率。另外,该模块还有强大的可扩充能力,用户可以增加自己的代码、中断服务程序、IO设备驱动到CCS(Code Composer Studio)的工程项目中,这样就可以直接驱动自行开发研制的控制板卡或第三方的硬件设备板卡,完成产品的设计。采用该平台,开发人员不用编写一行代码,就可以完成几乎所有设计、仿真和编程下载的工作,整个开发流程如图1所示。

Embedded Target for TI C2000应用流程示意图

                               图1  Embedded Target for TI C2000应用流程示意图

Embedded Target for TI C2000 DSP应用实例

下面以一个基于DSP TMS320F2812芯片的带CAN2.0B网络接口的数字逆变控制器的设计为例,介绍利用Embedded Target for TI C2000 DSP模块,与Matlab的Simulink产品中的其他模块结合,实现对该逆变控制器进行仿真和编程下载的应用。

数字式逆变器采用单相半桥逆变结构,逆变控制器核心芯片选用TMS320F2812,输出两路SPWM,EXB841模块作为SPWM信号的驱动放大器,控制开关采用全控器件IGBT,输入电压311V,输出电压为100V(有效值),开关频率为10kHz,逆变输出电压频率为50Hz。逆变控制器的系统原理及接口框图如图2所示,逆变系统的电流和电压通过电压霍尔传感器和电流采样电路分别检测出来,送入模拟信号处理电路中进行模拟滤波处理和幅值调整,处理后的信号送入DSP芯片之中,经过DSP片内的12位A/D转换模块,变为数字信号,DSP对信号进行数字滤波后,判断单相半桥的输出电压、电流是否过压或过流,并采取相应的保护措施;再根据控制算法进行处理,通过DSP片内的PWM输出模块,得到所需要的两路SPWM波形信号,经过EXB841驱动放大模块进行处理,最后对IGBT逆变半桥进行

控制,从而实现直流-交流的逆变。同时还利用DSP片内的CAN2.0B模块,保留一个对外的CAN网络接口,便于使用网络通信对数字逆变控制器进行实时控制和监测。

DSP逆变控制器接口示意图

                                        图2  DSP逆变控制器接口示意图

C语言项目框架图

在Matlab下输入c2000lib命令,可以显示Embedded Target for TI C2000 DSP目前所能够支持的各种DSP功能模块及相关信息。仿真时,主要利用Embedded Target for TI C2000 DSP所提供的C28X ADC、C28X PWM以及Mailbox子模块。

如图3所示,系统利用A/D转换模块,将采集到的逆变电流和电压作为SPWM输出的控制源。并通过CAN通道1将A/D转换值以及PWM输出占空比输送出来,同时还可以通过CAN通道0接收来自于网络上的通信命令,执行相应的子程序。C28X ADC模块在功能上完全等同于TMS320F2812的12位A/D转换模块,可以选择合适的模拟输入通道。C28X PWM模块在功能上完全等同于TMS320F2812事件管理器中带死区的全比较单元模块,同样可以选择定时器、PWM输出单元、PWM引脚极性以及设置死区时间。

Matlab下DSP应用模块仿真及下载示意图

                                图3 Matlab下DSP应用模块仿真及下载示意图

编程下载之前,先要对F2812 eZdsp模块进行编译属性、目标板和仿真器的选择设置,以及Real-Time Workshop的属性设置,具体步骤如下:

       1. 打开CCS2.20,选择合适的硬件仿真器,此处选择F2812 XDS510 Emulator,打开DSP软件集成开发环境。

       2.在Matlab下输入ccsboardinfo命令显示出来,查看Embedded Target for TI C2000 DSP所支持的板卡及驱动,如用户升级仿真器或更换板卡,则需安装相应的驱动程序,才能支持对应的物理设备。

       3. 右键点击F2812 eZDSP,对评估板硬件链接模块进行编译、链接和运行等选项的设置。注意,在设置BuildOptions属性时,若没有连接目标板或仿真器,则BuildAction只选择Build,可编译生成C代码;若有目标板及仿真器,则可选择Build_and_execute,实现C代码的编译下载及实时运行。

       4. 在DSPBoard选项中选择与目标板一致的DSP芯片类型,并更改DSP板标号,如F2812 PP Emulator等,本文改为F2812 XDS510 Emulator。

       5. 设置Real-Time Workshop的相关属性,可以根据个人的习惯进行定制。

经过上述设置步骤之后,可以选择工具菜单内的Real-Time Workshop下的Build Model生成仿真模型对应的C语言代码,Matlab的Command窗口会显示后台处理的详细过程,代码的编译及链接

过程在CCS中也会有显示。最后,CCS会自动打开Matlab所生成的软件项目代码,CCS中显示出来的SPWM项目的框架(F2812_SPWM.pjt)如图4所示,一共有F2812_SPWM_ main.c等14个C语言子程序、SPWM.cmd文件和一些头文件。所生成的逆变控制器C代码,保留了模型中相应的变量名,具有良好的可读性和可维护性,其中所生成CAN通信的主要源代码如下:

    /* CAN 邮箱发送子程序*/
    {
      ECanaMboxes.MBOX1.MDL.word. LOW_WORD=F2812_SPWM_B.R eadMsgADValueDutyCycle;
      ECanaMboxes.MBOX1.MSGC TRL.bit.DLC = 2;
      ECanaRegs.CANTRS.bit.TRS1 = 1;    // set eCAN Transmit Request Set register
      while(ECanaRegs.CANTA.bit.TA1 != 1 ) {} // check eCAN Transmit Acknowledge register
      ECanaRegs.CANTA.bit.TA1 = 1;      // clear eCAN Transmit Acknowledge register       
    } 

CCS中自动生成的

                                 图4 CCS中自动生成的

另外,用Embedded Target for TI C2000 DSP所提供的Build/Reload/Run模块,可以一步到位地将Matlab生成的C语言代码直接转为COFF文件下载到DSP逆变控制器的目标板中,不需作两个开发平台下的程序移植。如有特殊需求,还可以自行增加一些代码。这样就可以避开繁琐的编程步骤,直接进行在线算法验证,最终获取最优的控制程序实现。

结语

本文所介绍的DSP结合Matlab的应用实例较为典型。利用Matlab提供的Embedded Target for TI C2000 DSP 模块,还可完成对基于DSP的三相逆变控制器、电机控制或机器人等其他一些更为复杂的控制系统的仿真、直接编程下载和算法设计验证,实现DSP系统开发的一步到位。该方法简单有效、性价比高、开发周期短、适用范围广,有一定的参考价值和通用性。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

助力科研与检测新突破 上海2024年5月15日 /美通社/ -- 全球知名的科学仪器和服务提供商珀金埃尔默公司今日在上海举办了主题为"创新不止,探索无界"的新品发布会,集中展示了其在分析仪器领域的最...

关键字: 质谱仪 BSP DSC 气相色谱

上海2024年5月16日 /美通社/ -- 2024年5月10日至5月13日,富士胶片(中国)投资有限公司携旗下影像产品创新力作亮相北京P&E 2024。在数码相机展览区域,全新制定的集团使命"为世界绽...

关键字: 富士 数码相机 影像 BSP

贝克曼库尔特目前已成为MeMed Key免疫分析平台和MeMed BV检测技术的授权经销商 在原有合作的基础上,继续开发适用于贝克曼库尔特免疫分析仪的MeMed BV检测 加州布瑞亚和以色列海法2024年5月16日...

关键字: BSP IO 检测技术 免疫分析仪

英国英泰力能的燃料电池是可产业化的产品解决方案 英国首个专为乘用车市场开发的燃料电池系统 在 157kW 功率下,此燃料电池比乘用车的其他发动机更为强大 &...

关键字: ENERGY INTELLIGENT 氢燃料电池 BSP

深爱人才,共赴"芯"程 深圳2024年5月15日 /美通社/ -- 5月11日,深圳国资国企"博士人才荟"半导体与集成电路产业专场活动在深圳市重投天科半导体有限公司(简...

关键字: 半导体 集成电路产业 BSP 人工智能

武汉2024年5月15日 /美通社/ -- 北京时间4月26日-5月4日,2024 VEX 机器人世界锦标赛于美国得克萨斯州达拉斯市举办。本届 VEX 世锦赛为期九天,设有 VIQRC 小学组/初中组、V5RC 初中组/...

关键字: 机器人 BSP RC POWERED

上海2024年5月15日 /美通社/ -- 由生成式人工智能(AI)驱动的临床阶段生物医药科技公司英矽智能宣布,与复星医药(600196.SH;02196.HK)合作开发的潜在"全球首创"候选药物IS...

关键字: ISM BSP PC 人工智能

上海2024年5月13日 /美通社/ -- 5月8日,浦东新区国资委组织陆家嘴集团等9家区属企业与立邦中国召开合作交流会,旨在贯彻落实浦东新区区委、区政府工作要求,进一步放大进博会溢出带动效应,持续扩大区属企业与进博会重...

关键字: BSP 数字化 自动化立体仓库 智慧园区

上海2024年5月13日 /美通社/ -- 在数字化时代,高效的税务管理和ERP系统成为企业发展的关键。为了满足这一需求商应信息科技与Exact Software 易科软件就金四全电票税系统与ERP系统集成及商务合作建立...

关键字: AC 软件 BSP 数字化

北京2024年5月13日 /美通社/ -- 5月11日,鲲鹏昇腾开发者大会2024期间,华为举办"昇思AI框架及大模型技术论坛",软通动力数字基础设施与集成事业部总经理谢睿受邀出席、软通动力...

关键字: AI 模型 BSP 精度
关闭
关闭