2007年全国大学生电子设计大赛一等奖电动车跷跷板
2007年电子设计大赛报告
第八届全国大学电子设计竞赛(2007年)电动车跷跷板摘要:本设计中的电动车跷跷板运动控制系统以AVR系列单片机为控制核心,带光电编码器的伺服电机作为受控执行机构,能够精确的控制速度,快速到达指定位置。
利用陀螺仪与SCA103T倾角传感器,能精确测量跷跷板的倾斜度。
采用红外对管检测地面及跷跷板上的引导线,确保电动车不偏离跷跷板。
同时还具有良好人机交互界面。
系统采用基于变速积分式PID控制理论的伺服电机控制算法。
本设计的算法简洁优化,电机控制稳定可靠,很好地完成了设计各项要求。
关键词:运动控制 AVR单片机伺服电机 PID算法倾角传感器Abstract:In this design electric car seesaw movement control system take the AVR series MPU as the control core,brings the increase type photoelectricity encoder the servo electricalmachinery achievement to receive controls the implementing agency, canthe precise control speed, fast arrive assigns the position. Using thegyroscope and the SCA103T inclination angle sensor, can the precisionmeasuring seesaw gradient. Uses infrared examines on the ground andthe seesaw to the tube . Simultaneously also has the goodman-machine interactive contact surface. The system uses based on thespeed change integral PID control theory servo electrical machinerycontrol algorithm. This design algorithm succinct optimization, theelectrical machinery control stable is reliable, completed well hasdesigned each request.Keywords: motion control ;AVR single chip; PID algorithm; servomotor ; algorithm inclination angle sensor(一)系统方案1.1 实现方法本设计以检测引导线的方式,使电动车不偏离跷跷板。
基于PID 算法的电动车跷跷板系统设计
基于PID算法的电动车跷跷板系统设计聂晓凯中南大学信息科学与工程学院,长沙(410083)E-mail:kasaos@摘要:本系统采用P89V51RD2单片机作为控制系统的核心,采用步进电机作为电动车驱动电机,以L298为驱动芯片,配以舵机改变转向,使用角度传感器检测跷跷板的角度变化,在车的前后端设计了红外黑线检测模块保证电动车顺利驶上板以及在板上笔直行驶,红外光电码盘通过脉冲计数确定电动车在板上的位置,红外遥控键盘启动系统开始运行,液晶显示相关参数信息。
系统的平衡调节采用了数字PID控制算法,利用凑试法整定PID参数,通过角度传感器所测角度变化来控制步进电机的的转动实现跷跷板达到平衡状态。
关键词:P89V51RD2单片机,PID,角度传感器中图分类号:TP2712007年全国大学生电子设计竞赛的一道控制类的题目是电动车跷跷板问题,本系统设计要求电动车能够在规定时间内到达跷跷板的中心点C处,并保持平衡,随后电动车到达跷跷板的末端B处,停留之后返回始端A处。
另外,如果将跷跷板配重,则要求跷跷板在规定范围内驶上板,同时,也能实现平衡,如果再加一块重物之后跷跷板重新达到平衡。
本系统的设计在本文中采用了数字PID控制算法来实现。
1 系统方案设计、比较与论证1.1 总体方案设计论证本系统采用P89V51RD2单片机作为控制系统的主模块,实现系统控制与信号检测,如图1-1所示系统框图。
主要包括单片机模块,驱动电机模块,舵机模块,平衡检测模块,寻线模块,位置检测模块,液晶显示模块以及红外遥控模块。
图 1-1 系统框图系统通过平衡检测来判断电动车是否处于平衡状态,使电动车停留在C处附近,采用位置检测使电动车行驶至B处停止,采用寻黑线方法使电动车直线前行以及由末端B处能够直线后退到始端A处。
红外遥控启动系统,液晶显示各阶段用时以及温度时间。
在配重情况下通过黑线检测的方法使电动车在规定区域内的任意指定位置顺利驶上跷跷板。
电动车跷跷板设计 采用凌阳SPCE061A 16位单片机作为控制核心 大学生电子设计竞赛山东省一等奖
摘要本设计采用两个凌阳SPCE061A 16位单片机作为控制核心。
其中一个安装在小车上,另一个持在使用者手中连接键盘和LCD,通过无线模块进行双机通讯,实现远程对小车运行状态的实时监测。
为了对小车的行为进行精确控制,采用步进电机进行驱动。
系统通过倾角传感器采集跷跷板的倾角变化后传给单片机。
程序控制方法采用PID算法,使小车通过一个二阶欠阻尼脉冲响应过程最后趋于动态平衡。
根据设计需要,车体采用有机玻璃与铝合金自制而成。
关键词:SPCE061A单片机,角度传感器,光电传感器,PID算法.Abstract:This system takes two SPCE061A 16 bit microprocessor as the control center, one fixed on the car and another connected with keyboard and LCD handed by the controller. In this system, wireless is used to complete the two processors` communication to acquire a perfect interface between the controller and the whole control system. The car with four wheels is driven by two stepper motors, and through the angle sensitive gathering the information about the teeterboard’s equinity condition and then send to the microprocessor. The system takes the PID as main control method, through a progress of two pulse damping response, the car and the teeterboard finally reach an equinity condition.Keywords: SPCE061A microprocessor, angle sensor, light sensor, PID.1.系统方案设计1.1实现方法采用倾角传感器检测跷跷板与水平面的夹角,通过PID算法控制小车寻找平衡位置。
四天三夜的“信号发生器”—记2007年全国大学生电子设计大赛“索尼杯”作品
四天三夜的“信号发生器”—记2007年全国大学生电子设
计大赛“索尼杯”作品
王斌;高茂光;叶俊辉
【期刊名称】《电子制作》
【年(卷),期】2008(000)001
【摘要】在2007年全国大学生电子设计大赛中,我们三人组成的参赛队选择了高职高专组H题-信号发生器。
题目要求制作一台信号发生器,能产生正弦波、方波和三角波信号,可通过按键对其频率和幅度进行调整,并对调整及输出精度有一定要求。
通过四天三夜的紧张努力,我们最终以基本要求和发挥要求完全实现,并有多方面自主发挥及创新点,
【总页数】3页(P48-50)
【作者】王斌;高茂光;叶俊辉
【作者单位】郑州铁路职业技术学院
【正文语种】中文
【中图分类】TN911.6
【相关文献】
1.略论2007年全国大学生电子设计大赛E题-开关电源设计 [J], 王龙;蒋燕华;艾志军
2.程控滤波器(D题)设计报告—2007年全国大学生电子设计竞赛索尼杯奖 [J], 李清江;肖志斌;银庆宏;高吉祥;李楠;库锡树
3.2007年全国大学生电子设计大赛一等奖:电动车跷跷板 [J], 王鹏;胡德波;石耀良;姚福安;万鹏
4.2007年全国大学生电子设计大赛“全国一等奖”基于51单片机的“电动车跷跷板” [J], 王龙江;戴大云;李耀军
5.第十届“挑战杯”全国大学生课外学术科技作品竞赛全国终审决赛落幕西安外事学院两件作品均获三等奖 [J],
因版权原因,仅展示原文概要,查看原文内容请购买。
电动车跷跷板的设计与制作
具有自平衡装置的电动车跷跷板摘要:电动车跷跷板是第八届全国大学生电子设计大赛的题目之一,本设计在四川赛区获得了一等奖,在全国竞赛中获得了二等奖。
本制作是一种能在跷跷板上行驶,并且可以在跷跷板上自动找到平衡点的电动车。
它以MC9S12DG128单片机作为控制核心,由驱动调速模块、路面检测模块、显示模块、电源模块等几部分组成。
本制作设计了平衡杆力矩补偿装置,使调节跷跷板的平衡精度更高。
关键词:MC9S12DG128单片机单轴倾角传感器SCA61T 摄像头 PWM调速Abstract: The electric car seesaw is one of eighth session of national university student electron design big game topics, this design has won the first award in the Sichuan contest area, has won the second prize in the national competition. This manufacture is one kind can go on the seesaw, and may find the balance point automatically on the seesaw the electric car.It by the MC9S12DG128 monolithic integrated circuit took the control core, by the actuation velocity modulation module, the road surface examination module, the demonstration module, the power source module and so on several parts is composed. This manufacture has designed the equalizing bar moment of force compensation system, causes the adjustment seesaw the balanced precision to be higher.Key word: MC9S12DG128 monolithic integrated circuit Single axle inclination angle sensor SCA61T camera PWM velocity modulation汽车作为人们交通的工具,随着计算机技术、通信技术、传感器技术等的发展,智能汽车的研究成为汽车发展的一大趋势。
基于AT89S52单片机的电动车跷跷板系统设计
基于AT89S52单片机的电动车跷跷板系统设计作者:张建化陈跃熊永超来源:《现代电子技术》2008年第24期摘要:介绍电动车跷跷板系统的设计与实现。
该系统包括单片机系统电路、寻迹检测电路、平衡检测电路、步进电机驱动电路、数码显示电路等。
在系统中,以AT89S52单片机为电动小车控制核心,使用反射式红外发射接收器来检测轨迹,步进电机作为动力源实现小车前进后退和转向控制,用2个水银开关控制完成平衡状态的检测,用数码管分阶段实时显示电动车行驶所用时间。
3次实验数据表明,这里所提出的平衡检测方案是有效可行的。
关键词:寻迹检测电路;步进电机;跷跷板系统;平衡检测电路中图分类号:TP271.4文献标识码:B文章编号:1004-373X(2008)24-163-03Design of Seesaw System with Electric Vehicle Based on AT89S52 Single Chip ComputerZHANG Jianhua,CHEN Yue,XIONG Yongchao(Xuzhou Institute of Technology,Xuzhou,221008,China)Abstract:Design and implementation of seesaw system based on electric vehicle are introduced.The control system consists of AT89S52 single chip computer system,autonomous tracing circuit,balance detection circuit,driving circuit of stepping motor and LED display circuit.Centering on AT89S52,the track detection is realized by reflective infrared emitter and receiver and the steering of the vehicle is driven by stepping motor.The detection of balance state is implemented by two mercury switches and the travel time is displayed with LED separately.The scheme is proved to be effective and practical by experimental results during three tests.Keywords:autonomous tracing circuit;stepping motor;seesaw;balance detection circuit1 引言2007年全国大学生电子设计大赛的F题目是“电动车跷跷板”[1];题目要求设计并制作一个电动车跷跷板,使得电动小车从图1所示跷跷板起始端A出发在30 s内到达中心点C并保持平衡5 s,之后在30 s内到达跷跷板末端B并停留5 s,最后在1 min内退回到起始端A。
自动泊车系统的实现r——2017全国电子设计竞赛L题解析
自动泊车系统的实现r——2017全国电子设计竞赛L题解析苗鹏;王聪;陈燕凤
【期刊名称】《高师理科学刊》
【年(卷),期】2018(038)002
【摘要】根据2017年全国电子设计竞赛L题的命题要求,设计并制作了一款自动泊车系统.该系统选用STC15F系列单片机作为控制核心,采用超声波传感器作为定位、距离检测元件,步进电机作为小车驱动机构,结合无线通信技术,实现小车的自动入库与出库控制.测试结果表明,系统稳定、定位准确、反应灵敏,达到赛题所设定的设计要求.
【总页数】5页(P29-33)
【作者】苗鹏;王聪;陈燕凤
【作者单位】汕尾职业技术学院海洋工程系,广东汕尾 516600;汕尾职业技术学院海洋工程系,广东汕尾 516600;汕尾职业技术学院海洋工程系,广东汕尾 516600【正文语种】中文
【中图分类】TP273+.5
【相关文献】
1.小球滚动控制系统的实现——2015年全国大学生电子设计竞赛项目解析 [J], 李晓军;陈卫兵;赵青
2.帆板控制系统的设计与制作——2011年全国大学生电子设计竞赛F题 [J], 贾函龙;马英庆
3.基于自由摆的平板控制系统——2011年全国大学生电子设计竞赛本科组B题
[J], 郭九源;包宇洋;吕佳徽
4.电动车跷跷板自动控制系统—2007年全国大学生电子设计竞赛F题作品 [J], 张杰;黄凯;刘炳尧;李飞(指导教师)
5.基于单片机的简易多功能液体检测容器设计与实现
——2019年全国电子设计竞赛K题解析 [J], 林家铸;陈惠静;李焕洲
因版权原因,仅展示原文概要,查看原文内容请购买。
全国电子设计竞赛获奖作品论文 山东建筑大学-电动车跷跷板论文设计
电动车跷跷板的设计与制作摘要:本系统采用80C51单片机作为电动车行进系统、跷跷板平衡系统的监测和控制核心,通过机界面对电动车所作运动进行设定。
利用水银开关检测跷跷板两端位置实现对跷跷板平衡的测定;无线控制模块控制电动车行进,实现电动车行进系统与跷跷板平衡系统的协调一致;通过LCD实现显示电动车行进时间。
在符合题目要求基础上本系统还具有可自动寻迹实现稳定行进、语音提示等功能。
关键词:80C51单片机、水银开关、无线控制模块、LCD、自动寻迹、语音提示1.前言创新是科技发展的动力,我们认为一项成功的制作,必须在符合题目要求的基础上有所创新。
而“符合要求”主要是指在精度上。
要符合精度的要求,不一定要用昂贵的电子元件。
使用巧妙的方法用廉价的电子元件同样可以实现对精度的要求。
用更少的成本实现同样的功能,既是智慧的体现又能为使用将来适应市场经济打下基础。
所以我们的追求就是创新、精确与追求方法。
2.方案论证由:控制器模块、信息传输模块、电源模块、寻迹传感器模块、平衡测定模块、末端距离测定模块、电机驱动模块、计时模块、数据显示模块、语音提示模块构成。
本系统的结构图如图1所示:为最好的实现各模块的功能,满足设计要求。
我们分别设计了几种方案并分别进行了论证。
图1 系统结构图2.1控制器模块方案1:采用凌阳公司的16位单片机,它是16位控制器,当凌阳单片机应用语音处理和辨识时,由于其占用的CPU资源较多而使得凌阳单片机同时处理其它任务的速度和能力降低。
方案2:采用STC89C51单片机作为主控制器。
STC89C51是一个低功耗,高性能的51内核的CMOS 8位单片机,片内含8k空间的可反复擦些1000次的Flash只读存储器,具有128 bytes的随机存取数据存储器(RAM),32个IO口,2个16位可编程定时计数器。
且该系列的51单片机可以不用烧写器而直接用串口或并口就可以向单片机中下载程序。
我们自己制作51最小系统板,体积很小,下载程序方便,放在车上不会占用太多的空间。
设计报告
电动车跷跷板 电动车跷跷板方案设计报告方案设计报告指导老师指导老师赵建队员队员周天(05级) 郭世忠 刘东林 王康学校院系学校院系西安电子科技大学 测控技术与仪器摘要摘要本作品以07年全国电子设计大赛中的题目“电动车跷跷板”为目标,完成其基本要求和发挥部分。
小车设计成以MSP430单片机作为主控芯片,结合外围传感器,使小车在跷跷板上完成寻找平衡点、往返等任务。
方案设计与论证方案设计与论证通过车载倾角传感器对跷跷板倾角的高精度测量,实时的向控制系统反馈倾斜状态,系统根据跷跷板状态做出前进或后退动作,使跷跷板保持平衡及实现所要求的其他功能。
为保证小车在板上平稳行使,以及从地面任意位置找到跷跷板起点,在小车的前后四角各安装了一对红外发射接收传感器,通过设定合适的光强和角度,可以探测板边界的位置,配合上软件分析引导小车行驶。
根据题目要求系统可分为五部分,分别为控制模块、光电检测模块、平衡检测模块、电机驱动模块、显示模块,如下图所示。
1、小车硬件小车硬件平台平台平台选择选择选择方案一:使用自制的PCB 板小车,后两轮双轴驱动,前轮使用万向轮,左右两轮差动控制,可原地转弯。
方案二:购买市场上的玩具合适的遥控车模进行改装,后轮驱动,前轮使用舵机,使其能精确控制转弯角度,或者使用坦克车,左右两轮差动控制。
考虑方案二省去了制作的麻烦,且稳定性和各种性能均优于自制小车,所以这里采用成品玩具四驱车,移动控制更为平滑,且前轮使用舵机可更精确的控制方向。
2、控制芯片选择芯片选择本小车采用MSP430F149低功耗单片机主控芯片,该单片机IO接口数量多,内部资源丰富,如包涵12位AD转换、16位定时器、PWM控制、USART接口等,处理能力强大,能够轻松胜任此任务。
3、驱动电机选择方案一:使用步进电机,控制精确且可测量行进距离。
方案二:使用减速电机。
考虑步进电机驱动复杂,体积大成本高,故使用减速电机外加普通直流电机驱动芯片,由MSP430产生PWM信号控制转速。
2007年全国大学生电子设计大赛本科类及高职类信号处理部分试题[1]3
音频信号分析仪(A题)【本科组】一、任务设计、制作一个可分析音频信号频率成分,并可测量正弦信号失真度的仪器。
二、要求1.基本要求(1)输入阻抗:50Ω(2)输入信号电压范围(峰-峰值):100mV~5V(3)输入信号包含的频率成分范围:200Hz~10kHz(4)频率分辨力:100Hz(可正确测量被测信号中,频差不小于100Hz的频率分量的功率值。
)(5)检测输入信号的总功率和各频率分量的频率和功率,检测出的各频率分量的功率之和不小于总功率值的95%;各频率分量功率测量的相对误差的绝对值小于10%,总功率测量的相对误差的绝对值小于5%。
(6)分析时间:5秒。
应以5秒周期刷新分析数据,信号各频率分量应按功率大小依次存储并可回放显示,同时实时显示信号总功率和至少前两个频率分量的频率值和功率值,并设暂停键保持显示的数据。
2.发挥部分(1)扩大输入信号动态范围,提高灵敏度。
(2)输入信号包含的频率成分范围:20Hz~10kHz。
(3)增加频率分辨力20Hz档。
(4)判断输入信号的周期性,并测量其周期。
(5)测量被测正弦信号的失真度。
(6)其他。
三、说明1.电源可用成品,必须自备,亦可自制。
2.设计报告正文中应包括系统总体框图、核心电路原理图、主要流程图、主要的测试结果。
完整的电路原理图、重要的源程序、和完整的测试结果用附件给出。
无线识别装置(B 题)【本科组】一、任务设计制作一套无线识别装置。
该装置由阅读器、应答器和耦合线圈组成,其方框图参见图1。
阅读器能识别应答器的有无、编码和存储信息。
图1 无线识别装置方框图装置中阅读器、应答器均具有无线传输功能,频率和调制方式自由选定。
不得使用现有射频识别卡或用于识别的专用芯片。
装置中的耦合线圈为圆形空芯线圈,用直径不大于1mm 的漆包线或有绝缘外皮的导线密绕10圈制成。
线圈直径为6.6±0.5 cm (可用直径6.6 cm 左右的易拉罐作为骨架,绕好取下,用绝缘胶带固定即可)。
电子设计大赛控制类题目及准备[整理]
001.历届的“控制类赛题”在9届电子设计竞赛中,“控制类赛题”除了1994和1995年外,其它每届都有,共有9题:000①水温控制系统(1997年C题);000②自动往返电动小汽车(2001年C题);000③简易智能电动车(2003年E题);000④液体点滴速度监控装置(2003年F题);0000⑤悬挂运动控制系统(2005年E题);000⑥电动车跷跷板(2007年F题本科组);000⑦电动车跷跷板(2007年J题高职高专组);0000⑧声音引导系统(2009年B题);000⑨模拟路灯控制系统(2009年I题)。
000其中与电动小车有关的有6题。
0002. 从历届赛题可以看到:从历届的赛题来看,主攻“控制类”赛题方向的同学需要了解和掌握:(1)系统控制方案和算法设计(2)微控制器电路模块制作和编程:如:AT89S52、MSP430F1611、MSP430F2274、Atmega128、PIC16F628A、ADuC841、C8051F022、W78E51B、STM32F103VET6等等。
(3)微控制器外围电路模块制作和编程:如键盘及LED数码管显示器模块、RS-485总线通信模块、CAN总线通信模块、无线收发器电路模块、ADC模块、DAC模块等等。
(4)传感器电路模块制作和编程:如光电传感器模块、超声波发射与接收模块、温湿度传感器模块、倾角传感器模块、角度传感器模块、音频信号检测模块等等。
(5)电机控制电路模块制作和编程:如直流电机驱动模块(L298 N)、步进电机驱动模块(L297+L298N,TA8435H)、舵机控制模块、光电隔离模块等等。
(6)放大器电路模块制作:小信号放大器电路模块、滤波器电路模块、音频放大器(7)电源电路模块制作(8)电动小车制作0003. 建议:“控制类”赛题中所涉及到的一些知识点,特别是有关自动控制理论与算法方面,对有些专业的同学来讲,在专业课程中是没有的,需要自己去搞清楚。
2019年第八届年全国大学生电子设计竞赛题目.doc
第八届(2007年)全国大学生电子设计竞赛题目——本科2008年07月04日星期五 21:29音频信号分析仪(A题)【本科组】一、任务设计、制作一个可分析音频信号频率成分,并可测量正弦信号失真度的仪器。
二、要求1.基本要求(1)输入阻抗:50Ω(2)输入信号电压范围(峰-峰值):100mV~5V(3)输入信号包含的频率成分范围:200Hz~10kHz(4)频率分辨力:100Hz(可正确测量被测信号中,频差不小于100Hz的频率分量的功率值。
)(5)检测输入信号的总功率和各频率分量的频率和功率,检测出的各频率分量的功率之和不小于总功率值的95%;各频率分量功率测量的相对误差的绝对值小于10%,总功率测量的相对误差的绝对值小于5%。
(6)分析时间:5秒。
应以5秒周期刷新分析数据,信号各频率分量应按功率大小依次存储并可回放显示,同时实时显示信号总功率和至少前两个频率分量的频率值和功率值,并设暂停键保持显示的数据。
2.发挥部分(1)扩大输入信号动态范围,提高灵敏度。
(2)输入信号包含的频率成分范围:20Hz~10kHz。
(3)增加频率分辨力20Hz档。
(4)判断输入信号的周期性,并测量其周期。
(5)测量被测正弦信号的失真度。
(6)其他。
三、说明1.电源可用成品,必须自备,亦可自制。
2.设计报告正文中应包括系统总体框图、核心电路原理图、主要流程图、主要的测试结果。
完整的电路原理图、重要的源程序、和完整的测试结果用附件给出。
四、评分标准无线识别装置(B题)【本科组】一、任务设计制作一套无线识别装置。
该装置由阅读器、应答器和耦合线圈组成,其方框图参见图1。
阅读器能识别应答器的有无、编码和存储信息。
装置中阅读器、应答器均具有无线传输功能,频率和调制方式自由选定。
不得使用现有射频识别卡或用于识别的专用芯片。
装置中的耦合线圈为圆形空芯线圈,用直径不大于1mm的漆包线或有绝缘外皮的导线密绕10圈制成。
线圈直径为6.6±0.5 cm(可用直径6.6 cm左右的易拉罐作为骨架,绕好取下,用绝缘胶带固定即可)。
山东建筑大学-电动车跷跷板
全国大学生电子设计竞赛论文——山东赛区编号:F甲2315题目:电动车跷跷板学生姓名:魏志国王林林楚水良学校专业:山东建筑大学机械工程及自动化指导教师:张涵李凡冰李彦凤电动车跷跷板设计报告摘要:本智能车是以经改装的自购玩具塑料电动车为车架,STC89C51单片机为控制核心,加以电源电路、直流电机、灰度传感器、霍尔元件(位置传感器)、液晶显示、水银平衡检测系统、单片机最小系统以及其他电路构成。
经过水银平衡传感器将得到的信号经无线传输设备传给单片机,再由STC89C51的IO口驱动LM298以达到智能控制小车的前进和后退以及转向的目的,寻迹由灰度传感器完成,同时本系统LC95900语音模块进行语音的报警,以提示当前状态。
并间隔的将小车当前信息显示在LCD上。
关键词:STC89C51;直流电机;灰度传感器;无线收发;LM298;VB通信1、系统方案1. 1 实现方法根据题目的要求有加配重和不加配重两种情况不配重时:打开电源,小车从A端出发,自动寻找在跷跷板上的白线,以较快的速度到达D点(C点附近,放上一块磁铁),在D点经霍尔元件检测位置信号,当小车检测到信号开始减速,以此降低小车的惯性。
然后,小车缓慢向C点行使( C点处放上一块磁铁)并在小车上装上霍尔元件。
如此当小车到达C点时,水银平衡传感器检测到信号,发送给小车,经单片机处理,让小车在C点运动,反复检测、移动,最终达到平衡状态。
平衡之后, LC95900语音模块发出报警信息。
一段时间之后,小车从平衡点开始在30秒之内行驶到B处,然后绕回。
配重时:将配重物体放在规定范围之内,并将小车放置在地面距离跷跷板起始端A点300mm以外、90°扇形区域内,打开小车电源,采用灰度传感器自动寻迹到达A端,从A端上板,自动寻找在跷跷板上的白线,以较快的速度经过D点并到达C点,霍尔元件检测到Array信号,以提示小车减速。
然后水银平衡传感器检测到的信号,让小车反复移动,最终达到平衡状态。
2003-2011电赛历届题目
2011年题目清单开关电源模块并联供电系统基于自由摆的平板控制系统智能小车(C题)LC谐振放大器(D简易数字信号传输性能分析仪(E题)帆板控制系统(F题简易自动电阻测试仪(G题)波形采集、存储与回放系统(H题) 2009年题目清单:A题--光伏并网发电模拟装置B题--声音导引系统C题--宽带直流放大器D题--无线环境监测模拟装置E题--电能收集充电器F题--数字幅频均衡功率放大器G题--低频功率放大器H题--LED点阵书写显示屏I 题--模拟路灯控制系统2007年全国大学生电子设计竞赛题目A 音频信号分析仪B 无线识别C 数字示波器(D 程控滤波器(E 开关稳压电源(F 电动车跷跷板(G 积分式直流数字电压表(H 信号发生器(I 可控放大器(J 电动车跷跷板(第七届(2005年)全国大学生电子设计竞赛题目1、正弦信号发生器(A题)2、集成运放测试仪(B题)3、简易频谱分析仪(C题)4、单工无线呼叫系统(D题)5、悬挂运动控制系统(E题)6、数控恒流源(F题)7、三相正弦波变频电源(G题)2003年A题:电压控制LC振荡器下载B题:宽带放大器下载C题:低频数字式相位测量仪下载D题:简易逻辑分析仪下载E题:简易智能电动车下载F题:液体点滴速度监控装置下载主要题目类型:1、电源:开关电源、并网发电、电能收集充电、数控电源2、信号产生、处理、显示:模拟滤波器、数字滤波器、眼图、谐振放大器、宽带放大器、程控滤波器、压控LC振荡、可控放大器3、小车:电机控制:自由摆、帆板控制、电动车跷跷板、悬挂运动控制系统4、无线电:无线环境监测模拟装置、单工无线呼叫系统、无线识别5、仪器、仪表:低频数字式相位测量仪、简易逻辑分析仪、简易数字信号传输性能分析仪、简易自动电阻测试仪、波形采集、存储与回放系统。
跷跷板设计
电动车跷跷板(F题)【本科组】一、任务设计并制作一个电动车跷跷板,在跷跷板起始端A一侧装有可移动的配重。
配重的位置可以在从始端开始的200mm~600mm范围内调整,调整步长不大于50mm;配重可拆卸。
电动车从起始端A出发,可以自动在跷跷板上行驶。
电动车跷跷板起始状态和平衡状态示意图分别如图1和图2所示。
二、要求1.基本要求在不加配重的情况下,电动车完成以下运动:(1)电动车从起始端A出发,在30秒钟内行驶到中心点C附近;(2)60秒钟之内,电动车在中心点C附近使跷跷板处于平衡状态,保持平衡5秒钟,并给出明显的平衡指示;(3)电动车从(2)中的平衡点出发,30秒钟内行驶到跷跷板末端B处(车头距跷跷板末端B不大于50mm);(4)电动车在B点停止5秒后,1分钟内倒退回起始端A,完成整个行程;(5)在整个行驶过程中,电动车始终在跷跷板上,并分阶段实时显示电动车行驶所用的时间。
2.发挥部分将配重固定在可调整范围内任一指定位置,电动车完成以下运动:(1)将电动车放置在地面距离跷跷板起始端A点 300mm以外、90°扇形区域内某一指定位置(车头朝向跷跷板),电动车能够自动驶上跷跷板,如图3所示:(2)电动车在跷跷板上取得平衡,给出明显的平衡指示,保持平衡5秒钟以上;(3)将另一块质量为电动车质量10%~20%的块状配重放置在A至C间指定的位置,电动车能够重新取得平衡,给出明显的平衡指示,保持平衡5秒钟以上;(4)电动车在3分钟之内完成(1)~(3)全过程。
(5)其他。
三、说明(1)跷跷板长1600mm、宽300mm,为便于携带也可将跷跷板制成折叠形式。
(2)跷跷板中心固定在直径不大于50mm的半圆轴上,轴两端支撑在支架上,并保证与支架圆滑接触,能灵活转动。
(3)测试中,使用参赛队自制的跷跷板装置。
(4)允许在跷跷板和地面上采取引导措施,但不得影响跷跷板面和地面平整。
(5)电动车(含加在车体上的其它装置)外形尺寸规定为:长≤300mm,宽≤200mm。
07年国赛电动车上跷跷板程序源码.c
/***************************************************** This program was produced by theCodeWizardAVR V2.03.4 StandardAutomatic Program Generator?Copyright 1998-2008 Pavel Haiduc, HP InfoTech s.r.l.Project :Version :Date : 2009/7/25Author :Company :Comments:Chip type : ATmega16LProgram type : ApplicationClock frequency : 14.745600 MHzMemory model : SmallExternal RAM size : 0Data Stack size : 256*****************************************************/ #include <mega16.h>#include <delay.h>// USART控制和状态寄存器的标志位定义#define RXC 7 // UCSRA位定义#define TXC 6#define UDRE 5#define FE 4#define DOR 3#define PE 2#define U2X 1#define MPCM 0#define RXCIE 7 // UCSRB位定义#define TXCIE 6#define UDRIE 5#define RXEN 4#define TXEN 3#define UCSZ2 2#define RXB8 1#define TXB8 0#define URSEL 7 // UCSRC位定义#define UMSEL 6#define UPM1 5#define UPM0 4#define USBS 3#define UCSZ1 2#define UCSZ0 1#define UCPOL 0#define FRAMING_ERROR (1<<FE)#define PARITY_ERROR (1<<PE)#define DATA_OVERRUN (1<<DOR)#define DATA_REGISTER_EMPTY (1<<UDRE)#define MOTOR_L1 PORTB.0 //电机#define MOTOR_L2 PORTB.1#define MOTOR_R1 PORTB.2#define MOTOR_R2 PORTB.3#define BW_LEFT PINA.0 //黑白线#define BW_RIGHT PINA.1#define BUZZER PORTA.3 //蜂鸣器#define NULL 0x00#define LEFT 0x01#define RIGHT 0x02#define BAL_START 0x03#define BAL 0x04#define BAL_OK 0x05#define GET_B 0x06#define B_OK 0x07#define A_OK 0x08#define MODE_B 0x09#define MODE_P 0x0A#define BAL_AGAIN 0x0B#define FULL 0xFFunsigned char tran = 5; //USART数据bit receive_ok = 0;bit dir = 0;bit mode2 = 0;unsigned char delay_dir = 0;interrupt [USART_RXC] void usart_rx_isr(void) // USART接收中断服务{unsigned char status,data;status = UCSRA;data = UDR;if ((status & (FRAMING_ERROR | PARITY_ERROR | DATA_OVERRUN))==0) {tran = data;receive_ok = 1;}}void USART_Transmit(unsigned char data){while (!(UCSRA & DATA_REGISTER_EMPTY)); // 等待发送寄存器空UDR = data; // 发送数据}void motor_direct(unsigned char direct) //电机换向{if(direct == 0){MOTOR_L1 = 0;MOTOR_L2 = 1;MOTOR_R1 = 0;MOTOR_R2 = 1;}if(direct == 1){MOTOR_L1 = 1;MOTOR_L2 = 0;MOTOR_R1 = 1;MOTOR_R2 = 0;}}void motor_start(void) //电机启动{if(dir == 0){MOTOR_L1 = 0;MOTOR_L2 = 1;MOTOR_R1 = 0;MOTOR_R2 = 1;if(dir == 1){MOTOR_L1 = 1;MOTOR_L2 = 0;MOTOR_R1 = 1;MOTOR_R2 = 0;}}void motor_stop(void) //电机停止{MOTOR_L1 = 1;MOTOR_L2 = 1;MOTOR_R1 = 1;MOTOR_R2 = 1;}void motor_jerk(unsigned int time ,unsigned char direct_stop){motor_direct(direct_stop);delay_ms(time);motor_stop();}void buzzer_voice(void){BUZZER = 1;delay_ms(500);BUZZER = 0;}void mode_pro(void){unsigned char cache = 0;bit once = 0,balance_again = 0;//buzzer_voice();motor_start(); //电机开启delay_ms(500);motor_stop();while(1)if(BW_RIGHT == 1 && BW_LEFT == 0) {OCR1AH=0xef;OCR1AL=0xFF;OCR1BH=0xaf;OCR1BL=0xFF;delay_ms(300);motor_jerk(150,0);OCR1BH=0xef;OCR1BL=0xFF;OCR1AH=0x00;OCR1AL=0xFF;delay_ms(300);motor_jerk(200,1);delay_dir = 1;}else if(BW_RIGHT == 0 && BW_LEFT == 1) {OCR1BH=0xef;OCR1BL=0xFF;OCR1AH=0xaf;OCR1AL=0xFF;delay_ms(300);motor_jerk(150,0);OCR1AH=0xef;OCR1AL=0xFF;OCR1BH=0x00;OCR1BL=0xFF;delay_ms(300);motor_jerk(200,1);delay_dir = 2;}else if(BW_RIGHT == 0 && BW_LEFT == 0) {OCR1AH=0xc0;OCR1AL=0xFF;OCR1BH=0xf0;OCR1BL=0xFF;motor_jerk(30,0);}else if(BW_RIGHT == 1 && BW_LEFT == 1) {/*if(delay_dir == 1){OCR1AH=0xef;OCR1AL=0xFF;OCR1BH=0xaf;OCR1BL=0xFF;delay_ms(300);motor_jerk(150,0);OCR1BH=0xef;OCR1BL=0xFF;OCR1AH=0x00;OCR1AL=0xFF;delay_ms(300);motor_jerk(200,1);}else if(delay_dir == 2){OCR1BH=0xef;OCR1BL=0xFF;OCR1AH=0xaf;OCR1AL=0xFF;delay_ms(300);motor_jerk(150,0);OCR1AH=0xef;OCR1AL=0xFF;OCR1BH=0x00;OCR1BL=0xFF;delay_ms(300);motor_jerk(200,1);}*/break;}delay_ms(400);};OCR1AH=0xef;OCR1AL=0xFF;OCR1BH=0xef;OCR1BL=0xFF;buzzer_voice();motor_start(); //电机开启delay_ms(1000);motor_stop();again:delay_ms(1000);USART_Transmit(BAL_START);USART_Transmit(BAL_START);USART_Transmit(BAL_START);USART_Transmit(BAL_START);USART_Transmit(BAL_START);while (1) //找平衡{cache = tran;if(receive_ok == 1 && cache == LEFT){motor_jerk(30,1);delay_ms(800);}else if(receive_ok == 1 && cache == RIGHT) {motor_jerk(30,0);delay_ms(800);}else{motor_stop();if(cache == BAL && once == 0){buzzer_voice();once = 1;}if(cache == BAL_OK){buzzer_voice();break;}}}if(balance_again == 0){while(1){if(tran == BAL_AGAIN)break;delay_ms(100);}balance_again = 1;once = 0;receive_ok = 0;goto again;}motor_jerk(150,0);while (1){if(BW_LEFT == 1 && BW_RIGHT == 1){USART_Transmit(GET_B);USART_Transmit(GET_B);USART_Transmit(GET_B);USART_Transmit(GET_B);USART_Transmit(GET_B);break;}else{motor_jerk(30,0);delay_ms(800);}}while (1){if(tran == B_OK)break;};motor_jerk(1200,1);while (1){if(BW_LEFT == 1 && BW_RIGHT == 1){motor_jerk(30,1);delay_ms(500);motor_jerk(30,1);delay_ms(500);motor_jerk(30,1);break;}else{motor_jerk(40,1);delay_ms(800);}};USART_Transmit(A_OK);USART_Transmit(A_OK);USART_Transmit(A_OK);USART_Transmit(A_OK);USART_Transmit(A_OK);while (1){};}void main(void){unsigned char cache = 0;bit once = 0;//unsigned char middle,balance,B,A;//unsigned char time_h[10] = {0},time_m[10] = {0},time_s[10] = {0};//unsigned char *mid = ""// Input/Output Ports initialization// Port A initialization// Func7=In Func6=In Func5=In Func4=In Func3=Out Func2=In Func1=In Func0=In// State7=T State6=T State5=T State4=T State3=0 State2=P State1=P State0=P PORTA=0x07;DDRA=0x08;// Port B initialization// Func7=In Func6=In Func5=In Func4=In Func3=Out Func2=Out Func1=Out Func0=Out // State7=T State6=T State5=T State4=T State3=0 State2=0 State1=0 State0=0 PORTB = 0x00;DDRB=0x0F;// Port C initialization// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T PORTC=0x00;DDRC=0x00;// Port D initialization// Func7=In Func6=Out Func5=Out Func4=Out Func3=In Func2=In Func1=In Func0=In // State7=T State6=1 State5=0 State4=0 State3=T State2=T State1=T State0=T PORTD=0x40;DDRD=0x70;// Timer/Counter 0 initialization// Clock source: System Clock// Clock value: 14.400 kHz// Mode: Normal top=FFh// OC0 output: DisconnectedTCCR0=0x00;TCNT0=0x00;OCR0=0x00;// Timer/Counter 1 initialization// Clock source: System Clock// Clock value: 14745.600 kHz// Mode: Fast PWM top=ICR1// OC1A output: Non-Inv.// OC1B output: Non-Inv.// Noise Canceler: Off// Input Capture on Falling Edge// Timer 1 Overflow Interrupt: Off// Input Capture Interrupt: Off// Compare A Match Interrupt: Off// Compare B Match Interrupt: OffTCCR1A=0xA2;TCCR1B=0x19;TCNT1H=0x00;TCNT1L=0x00;ICR1H=0xFF;ICR1L=0xFF;OCR1AH=0xef;OCR1AL=0xFF;OCR1BH=0xef;OCR1BL=0xFF;// Timer/Counter 2 initialization// Clock source: System Clock// Clock value: Timer 2 Stopped// Mode: Normal top=FFh// OC2 output: DisconnectedASSR=0x00;TCCR2=0x00;TCNT2=0x00;OCR2=0x00;// USART initialization// Communication Parameters: 8 Data, 1 Stop, No Parity// USART Receiver: On// USART Transmitter: On// USART Mode: Asynchronous// USART Baud Rate: 19200UCSRA=0x00;UCSRB=0x98;UCSRC=0x86;UBRRH=0x00;UBRRL=0x2F;// External Interrupt(s) initialization// INT0: Off// INT1: Off// INT2: OffMCUCR=0x00;MCUCSR=0x00;// Timer(s)/Counter(s) Interrupt(s) initializationTIMSK=0x01;// Analog Comparator initialization// Analog Comparator: Off// Analog Comparator Input Capture by Timer/Counter 1: Off ACSR=0x80;SFIOR=0x00;// Global enable interrupts#asm("sei")if(BW_LEFT == 1 && BW_RIGHT == 1){mode2 = 1;USART_Transmit(MODE_P);USART_Transmit(MODE_P);delay_ms(400);USART_Transmit(MODE_P);USART_Transmit(MODE_P);delay_ms(400);USART_Transmit(MODE_P);mode_pro();}USART_Transmit(MODE_B);USART_Transmit(MODE_B);delay_ms(400);USART_Transmit(MODE_B);USART_Transmit(MODE_B);delay_ms(400);USART_Transmit(MODE_B);buzzer_voice();motor_start(); //电机开启delay_ms(1000);motor_stop();delay_ms(1000);USART_Transmit(BAL_START);USART_Transmit(BAL_START);USART_Transmit(BAL_START);USART_Transmit(BAL_START);USART_Transmit(BAL_START);while (1) //找平衡{cache = tran;if(receive_ok == 1 && cache == LEFT){motor_jerk(30,1);delay_ms(800);}else if(receive_ok == 1 && cache == RIGHT)motor_jerk(30,0);delay_ms(800);}else{motor_stop();if(cache == BAL && once == 0){buzzer_voice();once = 1;}if(cache == BAL_OK){buzzer_voice();break;}}}motor_jerk(200,0);while (1){if(BW_LEFT == 1 && BW_RIGHT == 1){USART_Transmit(GET_B);USART_Transmit(GET_B);USART_Transmit(GET_B);USART_Transmit(GET_B);USART_Transmit(GET_B);break;}else{motor_jerk(30,0);delay_ms(800);}}while (1){if(tran == B_OK)break;motor_jerk(1200,1);while (1){if(BW_LEFT == 1 && BW_RIGHT == 1){motor_jerk(30,1);delay_ms(500);motor_jerk(30,1);delay_ms(500);motor_jerk(30,1);break;}else{motor_jerk(40,1);delay_ms(800);}};USART_Transmit(A_OK);USART_Transmit(A_OK);USART_Transmit(A_OK);USART_Transmit(A_OK);USART_Transmit(A_OK);while (1){};}。
基于STM32的电动车跷跷板系统设计
基于STM32的电动车跷跷板系统设计摘要:介绍电动车跷跷板系统的设计与实现。
该系统包括单片机系统电路、寻迹检测电路、平衡检测电路、步进电机驱动电路、数码显示电路等。
在系统中,以STM32单片机为电动小车控制核心,使用反射式红外发射接收器来检测轨迹,步进电机作为动力源实现小车前进后退和转向控制,用2个水银开关控制完成平衡状态的检测,用数码管分阶段实时显示电动车行驶所用时间。
3次实验数据表明,这里所提出的平衡检测方案是有效可行的。
关键词:寻迹检测电路;步进电机;跷跷板系统;平衡检测电路。
一、引言全国大学生电子设计大赛的F题目是“电动车跷跷板”;题口要求设计并制作一个电动车跷跷板,使得电动小车从图1所示跷跷板起始端A出发在30 s内到达中心点C 并保持平衡5 s,之后在30 s内到达跷跷板末端B并停留5 s,最后在1 min内退回到起始端Ao在整个行驶过程中,电动车始终在跷跷板上,并分阶段实时显示电动车行驶所用的时间。
所要求平衡的定义为A, B两端与地面的距离差d =dA - dB不大于40 mm。
图1 电动车跷跷板示意图二、系统方案设计在系统设计中,根据竞赛要求电动小车设计车体长为20cm,宽为15cm,电动小车采用四轮驱动、调节驱动轮的快慢进行转向的方案,这种结构使得小车在运动时比较平稳。
STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核。
按性能分成两个不同的系列:STM32F103 “增强型”系列和STM32F101 “基本型”系列。
增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品:基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是16位产品用户的最佳选择。
两个系列都内置32K到128K的闪存,不同的是SRAM的最大容量和外设接口的组合。
时钟频率72MHz时,从闪存执行代码,STM32 功耗36mA,是32位市场上功耗最低的产品,相当于0. 5mA/MHzo STM32芯片如图2。
电动车
2007年J题电动车跷跷板为使电动车在跷跷板上按要求准确运行采用了单片机AT89C51最小系统作为电动车的检测和控制系统。
通过红外发射接收一体探头检测路面黑色寻迹线,使小车按预定轨道行驶,根据角度传感器检电动车跷跷板海军航空工程学院(青岛) 邵慧李文超孙庆洲摘要:本设计为使电动车在跷跷板上按要求准确运行采用了单片机AT89C51最小系统作为电动车的检测和控制系统。
通过红外发射接收一体探头检测路面黑色寻迹线,使小车按预定轨道行驶,根据角度传感器检测跷跷板的平衡状态控制电动车使其在跷跷板上达到动态平衡。
再加上基于AT89C51单片机的键盘、液晶显示电路,构成了整个系统的硬件总电路。
最后通过软件设计,实现了按预定轨道行驶、保持平衡等功能。
关键词:角度传感器平衡寻迹线红外发射接收一体探头AbstractIn order to let the Electromotion Dolly run on the teeterboard exactly, our design adopts SCM-AT89C51 least system as dolly's measure and control system. through examining the black trace by Infrared RayElectopult-receiver,to make the dolly run on the prearrange orbit.the other, bases on Angle Transducer,SCM examines the balance state of the teeterboard to control the Electromotion Dolly reach to balance on the teeterboard.We also introduced the keyboard based on AT89C51 SCM and fluiding crystal revealing electrocircuit,which constituents the chief hardware electrocircuit of the entire system .Finally,the function is realized including run on the orbit ,keep balance,etc,using software designment.Key word: Angle Transducer,balance, black trace,Infrared RayElectopult-receiver1.系统方案设计、比较与论证根据题目的基本要求,设计任务主要完成电动车在规定时间内按规定路径稳定行驶,并能具有保持平衡功能,同时对行程中的有关数据进行处理显示。