返回首页 > 您现在的位置: 比赛信息 > 新闻资讯 > 正文

电子设计竞赛

发布日期:2020/7/6 23:29:48 浏览:577

来源时间为:2020-07-03

关注、星标公众号

,直达精彩内容

ID:技术让梦想更伟大

作者:李肖遥

本作品是大学时期的,校内电子设计竞赛一等奖

人体生命体征模拟器--电赛专题

设计要求

设计一款模拟人体生命体征模拟器,要求其能准确模拟人体生命的各种体征(呼吸,心跳,体温,声音);并且能够对相关参量进行有效控制。以呼吸或者心跳体征为主要模拟实现的功能:

输入电压:5V或者12V

频率可控范围:

0.2-0.8Hz(人体正常呼吸的频率范围)

1-3Hz(人体心跳频率范围)

频率控制步进:1

幅度调节范围:0-100(幅度大小不做规定)

通过上位机进行状态控制(通信方式和上位机平台形式可自选)

电子设计大赛

总体框图

1.初始设计方案比较

方案一:在传动系统的基础上采用直流电机作为驱动,配合测速编码器进行PWM闭环控制来稳定步进频率,这样在方案思想上是可以达到频率方面的要求的,但是在幅度控制方面,我们尝试在转动片上加上步进电机来控制改变幅度,却出现幅度在断电后再次上电状态不确定,因此放弃了此方案。

方案二:采用舵机作为传动系统的驱动,因为舵机具有良好的即走即停效果,一般的舵机便可具有一定大小的扭矩,通过控制舵机信号PWM的占空比来控制舵机摆动的幅度,控制频率方面可以通过在不同的时间给舵机不同PWM可以幅度和频率上进行较为精确的控制,我们选用SD5数字舵机来进行驱动,效果较为理想,因此选择此方案来进一步完善。

2.单元电路设计与元器件的选择以及软件平台

我们在此选择的通过7.2V镍铬电池,采用线性稳压芯片LM2940来稳定输出5V电压,分别给16位单片机芯片和舵机供电,焊接键盘来做外部控制。

4个220uf的电容C1,C2,C3,C4.

一个3KΩ电阻,

一个9013NPN三极管,

一个无源蜂鸣器,

一个12864液晶显示器,

一个飞思卡尔MC9S12XS128MAL型号16位单片机最小系统,

一个SD5数字舵机

6个LED灯

2.15V稳压电源:

直流稳压是通过国家半导体公司生产的LM2940稳压5V芯片将镍铬电池7.2V直流电降压转换成稳压输出的5V电压的,LM2940最大输出电流有1A,典型的输入输出电压压降为0.5V,还有就是过流保护,过压保护这样一般电源芯片都有的东西,接着就是典型电路图,一般接发直接按照典型电路图来接就OK了,图为直流稳压电源方框图。

电子设计大赛

5V稳压电源

2.2最小系统控制器芯片介绍

电子设计大赛

最小系统

飞思卡尔MC9S12XS128MAL型号16位操作芯片,该最小系统芯片内部模块非常齐全,内部主要模块有PWM模块,SCI串口通信模块,PIT定时器计数器模块,ADC模块等.芯片处理性能上该芯片内部带有PLL锁相环倍频模块,最高倍频可达120MHz,兼顾稳定性和处理速度,我们选用倍频到80MHz。

2.3舵机控制原理:

电子设计大赛

舵机控制原理图

2.4软件开发平台:

本次编写调试程序使用的是CodeWarrior编译软件平台,充分利用其强大的在线调试模式,为程序调试过程提供了很大的便利其使用界面如图

电子设计大赛

软件开发平台

CodeWarrior的功能强大,可用于大部分单片机、嵌入式系统的开发。用户可在新建工程时将芯片的类库添加到集成环境开发环境中,工程文件一旦生成就是一个最小系统,用户无需再进行繁琐的初始化操作,就能直接在工程中添加所需的程序代码。利用CodeWarrior和配套的BDM。用户可以进行一系列的调试工作,如监视寄存器状态、修改PC指针、设置断点等,这样能快速地帮助我们找到软件或硬件的问题。

Hiwave下载调试界面

在源程序编译、连接通过后,就可以进行程序下载了。下载前,先将单片机上已经存在的程序擦除,然后点击Load,将bin文件夹下生成的后缀为.abs的文件打开,就可以完成下载。

2.5BDM开发工具:

电子设计大赛

BDM开发工具

后台调试模式(BackgroundDebugMode)是当代单片机普遍采用的调试方式之一,在BDM模式下主要可以实现以下3个方面的功能:首先是应用程序的下载与在线更新。在BDM模式下,可以对Flash做写入和擦除操作,故可以在产品出厂前即将应用程序下载的产品当中去,也可以在产品出厂后更应用程序。

BDM模式的另一功能是做单片机内部资源的配置与修复,程序的加密处理等。一些MCU的内部寄存器只能在BDM模式下操作,特别是一些单片机内部电源配置的寄存器。BDM的第三个功能是做应用程序的动态调试。S12系列单片机的BDM调试模式有这种功能。和很多现代单片机一样,S12单片机CPU内部使用了4级流水线结构,这种结构使得CPU的读取指令,解释指令,执行指令等操作看起来好像是并行的。

3.系统原理分析和软件设计与实现

3.1金属片周期运动的原理分析

在程序中,通过1ms定时中断,在中断中计数,当计数标志位Timecnt等于周期时间(所需频率的倒数)时,给舵机一个PWM波,由于舵机需要反应时间,所以在Timecnt等于一半周期的时候给另外一个PWM波,

0T/2(PWM(A2))T(PWM(A1))

心跳频率是1~3HZ,步进1,即步进0.02HZ,相应的周期T=1/f;用一个数组存放所有的频率对应的周期时间,f=1HZ,T=1s,Timecnt=1000;f=1.02HZ,T=0.98S,Timecnt=980;

依此类推,此数组可用visualC 6.0编写程序,得到数组的100个元素的值。

当要改变频率的值时,改变计数变量Timecnt所等于的值,这些值存放在数组里,我们可以通过上位机或者是按键来改变所选择的数组元素,这样实现精确控时输出占空比变化的PWM波;

当频率为1HZ时选择数组的第一个元素值1000,然后当计数变量等于1000,即1s时间到,周期循环;

当频率为1.02HZ时选择数组的第二个元素值980,依此类推可实现金属片所有的运动频率。

3.2软件设计流程图

此处保密,忽略

3.3软件算法及流程

系统的软件编写是基于MC9S12XS128单片机,主要用到S12芯片中的PWM模块,TIM模块、I/O模块以及SCI模块,PIT模块等模块化设计。PWM模块主要用来控制舵机的运转;TIM模块主要是用在了延时时间模块,I/O模块主要是用来分配给按键和LED灯、信息采集;SCI模块主要用在无线串口调试模块;PIT模块用于定时中断。

3.3.1PIT模块

PIT模块

在图中可以看到6个定时器模块,MicroTimer0、MicroTimer1、Timer0、Timer1、Timer2、Timer3,其中前两个是8位的,后四个是16位的。从图中可以看出PIT模块是以总线时钟(BusClock)为基准时钟的,总线时钟通过8位MicroTimer0和MicroTimer1倍频形成两个基时钟,即MicroTimerBase0和MicroTimerBase1,这两个基时钟通过16位Timer给PIT提供时钟(通过寄存器PITMUX设置)。其实相对于PIT模块是一个24位的定时器。通过给PITLD0和PITMTLD0的值,来设置定时中断时间,timercycle=定时周期=(PITMTLD0 1)*(PITLD0 1)*(1/fBus)=1ms。

3.3.2显示键盘接口模块

系统使用LCD12864作为显示器件,将金属条运动所对应的频率,幅度,经过数据处理转换进行实时生命体征各个参数(频率,幅度)液晶显示,同时使用5个功能按键实现频率和幅度以及呼吸和心跳模式的切换的设定,分别接入单片机的5个外部中断接口,功能依次为“频率 ”、“频率-”、“幅度-”、“幅度 ”,“心跳和呼吸模式切换”当有键按下后,进入中断服务子程序,通过判断标志位确定哪个键按下,执行相应功能。

3.3.3SCI模块

系统使用SCI0串口中断,采用蓝牙方案,蓝牙方案低功耗,小体积以及低成本的芯片解决方案使得Bluetooth技术甚至可以应用于极微小的设备中。

电子设计大赛

SCI模块

3.3.4PWM模块

系统采用PIT和PWM模块来控制实现输出占空比变化的脉冲波。在一个周期时间内,通过周期的一半时间点和周期的末点来给定不同的占空比,从而实现舵机来回周期性的摆动,从而达到模拟心跳及呼吸运动的目的。这里使用PIT中断精确定时,给S-D5舵机的PWM波的频率为200HZ,舵机响应速度较好。

4.机械传动模拟介绍及操作说明

4.1通过给舵机不同占空比的脉冲,使舵机转动不同大小的角度;

电子设计大赛

4.2舵机转动带动转轴上的传动片绕传动片顶端的转轴转动;

电子设计大赛

4.3传动片带动传动条,使传动条在滑道的束缚下沿滑到做周期性往返运动;

电子设计大赛

作品操作说明:

电子设计大赛

操作方式一:

手工焊接7支按键,第一个“频率 ”,第二个“频率-”,第三个“幅度-”,第四个“幅度 ”,第五个“模式切换”

操作方式二:

电子设计大赛

[1] [2]  下一页

最新新闻资讯

欢迎咨询
返回顶部