简易风力摆报告设计

简易风力摆报告设计
简易风力摆报告设计

摘要

设计了一个简易风力摆控制装置,由直流风机组,陀螺仪,直流减速电机以及激光笔等组成。以MSP430F149单片机为核心,用PWM波控制控制电机转速,调节风力大小,并以四个风机上下与左右同面两两并在一起对碳素管及激光笔进行工作,使细杆及激光笔在风机的作用下可进行自由摆动且进一步可控摆动在地上划线,具有很好的重复性,并且可以设定摆动方向且画短线,已经能够在将风力摆拉起一定角度放开后可以在规定时间内达到平衡。

关键词:风力控制摆、陀螺仪、轴流风机、PWM调速、MSP430单片机

风力摆控制系统(B题)

1方案设计与选择

1.1设计内容

要求一个下端悬挂有(2~4只)直流风机的细管上端固定在结构支架上,只由风机提供动力,构成一个风力摆,风力摆上安装一个向下的激光笔。通过单片机代码指令控制驱动风机使风力摆按照一定的规律运动,并使激光笔在地面画出要求的轨迹,风力摆结构图如图1所示。

图1风力摆结构图

1.2设计要求

1.2.1基本要求

(1)从静止开始,15s 内控制风力摆做类似自由摆运动,使激光笔稳定地在地面画出一条长度不短于50cm 的直线段,其线性度偏差不大于±2.5cm,并且具有较好的重复性;

(2)从静止开始,15s 内完成幅度可控的摆动,画出长度在30~60cm 间可设置,长度偏差不大于±2.5cm 的直线段,并且具有较好的重复性;

(3)可设定摆动方向,风力摆从静止开始,15s 内按照设置的方向(角度)摆动,画出不短于20cm 的直线段;

(4)将风力摆拉起一定角度(30~45°)放开,5s 内使风力摆制动达到静止状态。

1.2.2发挥部分

(1)以风力摆静止时激光笔的光点为圆心,驱动风力摆用激光笔在地面画圆,30s 内需重

复3 次;圆半径可在15~35cm 范围内设置,激光笔画出的轨迹应落在指定半径±2.5cm 的圆环内;

(2)在发挥部分(1)后继续作圆周运动,在距离风力摆1~2m 距离内用一台50~60W 台扇在水平方向吹向风力摆,台扇吹5s 后停止,风力摆能够在5s 内恢复发挥部分(1)规定的圆周运动,激光笔画出符合要求的轨迹;

(3)其他。

2总体方案设计与选择

2.1单片机选择

方案一:采用STC89S51芯片,该款芯片具有高性能低功耗的特点,具有32位输入/输出,可以实现处理、存储等功能[1],但是其灵活性不高,需实时保护软件现场,否则易丢失信息,存储能力较弱。

方案二:采用MSP430F149芯片,该款芯片具有高性能,低功耗的特点,其抗干扰能力比较强,存储空间较大,稳定性较强。

二者比较之下,选择方案二作为此次设计的核心控制部分。

2.2直流风机选择

方案一:采用12V 4.5A的轴流风机,风力很大,可以将自身轻松吹起,但是体积较大,质量较重。

方案二:采用12V 1.5A的小风机,体积小,质量轻。但是风力足够大,单电机产生的风力可吹起4个相同电机。

综合考虑,选择方案二中的1.5A的小风机[2]。

2.3驱动电路选择

方案一:采用LM298N全桥驱动芯片,单块芯片可输出四通道PWM波,控制四路风机,但输出电流过低,难以达到风机额定功率。

方案二:采用BTN7971B半桥芯片,驱动电流大,工作频率高,足以满足多个风机同时工作的要求。

综合考虑,选择方案二的芯片。

2.4 风力摆控制端设计

风力摆控制端装置如图2所示。

图2风力摆控制端装置

2.5方案框图

方案框图如图3所示。

图3总体方案流程图

3模块电路的设计和计算

3.1核心控制单元

在本设计中我们采用单片机MSP430F149模块为核心控制单元。来进行外部电路的控

制。从而实现各种功能,达到实验要求。最小系统如图4所示。

图4 MSP430最小系统

3.2转压模块

风机12V供电,单片机5V供电,所以需要转压模块[3]来转换,12V转5V电路如图5所示。

图5转压模块

转压电路中的LED1灯是一个指示灯,二极管是用来保护电路,利用二极管的单向导通性,防止电流逆流。

3.3传感器模块

风力摆在摆动过程中可能会出现晃动,因此在这里我们用三向加速度传感器MMA7361模块。它根据物体运动和方向改变输出信号的电压值。用单片机自带A/D转换器读取x、y、z三向的输出结果,再根据三向加速计进行角度测量原理,即可计算出运动物体与x、y、z

三向的夹角。经过试验,采用加速度传感器可有效测量所需角度,且精度及响应时间均较好。

以下为三向加速计MMA7361进行角度测量原理:MMA7455三向加速度传感器,根据物件运动即方向改变输出信号的大小。主控芯片MSP430F149读取X 、Y 、Z 三路电压信号并进行A/D 转换。X 、Y 、Z 轴的加速度分量Ax 、Ay 、Az 满足错误!未找到引用源。。

三角倾角测量如图6所示。

arctan arctan arctan Z

ρφθ===

错误!未找到引用源。

X

(A)(B)(C)(D)

图6三角倾角测量

3.4按键电路

为了完成不同的规定摆动,所以需要用按键来实现。按键电路我们采用拨码开关控制,按键电路如图7所示。

图7按键电路

3.5驱动模块

本设计采用BTN7971芯片进行风机的驱动,可直接对风机机进行控制,不需隔离电路,它通过改变控制端的电平来对风机进行启停、正反转操作,非常方便,亦能满足直流轴流风机全速运动时的超大电流要求[2]。

驱动电路如图8所示。

图8风机驱动电路

4系统软件设计

系统软件设计如图9所示。

图9系统软件流程图

本系统我简易风力摆装置,其本质就是利用陀螺仪检测角度信息,反馈给单片机后作出

相应的指令,对系统作出调整,达到所需的要求,使风机工作,风力摆摆出相应角度并能持

续运动并在规定时间内停止。

5测试及调试结果

5.1测试设备

兆信RXN-305D 开关电源(12V 3A ),量角器,直尺,钢卷尺,Txktronix TDS2022示

波器。

5.2测试结果

(1) 基本要求测试

基础部分测试如表1所示。

表1基础部分测试表

(2) 发挥部分测试

发挥部分如表2所示。

表 2发挥部分测试表

5.3结果分析

测试结果是基于多次测试后得到的数据,经过多次测试后,基本完成所有任务。有些目标尚未完全完成,测试环境对测试结果也有一定的影响,同时由于摆杆状态的不同得到结果也不同。总而言之,本次测试结果据实可靠。

6项目总结

本系统以单片机为核心部分,根据陀螺仪采集的信号,经计算到处的数据来控制直流电机转动,从而达到系统的基本要求,在本系统设计过程中我们力求简洁但能充分发挥硬件电路和软件编程的特点,来满足系统设计的要求,因为时间有限,系统各部分做的相对粗糙,算法和电路都能够做进一步优化,以求更好地实现其功能。

在这段实验过程中,所面临的困难一个接着一个,都需要我们自己运用平时所学知识及便利的网络条件,在实践中想办法动手解决,经过这次比赛,我们体会到了团队合作的意义,每位队员都得到了很好的锻炼,学到了很多东西。

参考文献

1.罗石,商高高.电控助力转向系统电机驱动电路设计方案的研究[J].江苏大学学报(自然科学版),2004,25(6):488-491.

2.穆莉莉,郑小刚.散热风机自适应控制系统的设计[J].新技术新工艺,2000,(10):6-8.3.和军平,冯巨标,李远航,等.DC/DC开关电源对低压差分信号线干扰模型研究[J].电机与控制学报,2014,18(9):17-22.

简易风力摆报告设计

设计了一个简易风力摆控制装置,由直流风机组,陀螺仪,直流减速电机以及激光笔等组成。以MSP430F14单片机为核心,用PW波控制控制电机转速,调节风力大小,并以四个风机上下与左右同面两两并在一起对碳素管及激光笔进行工作,使细杆及激光笔在 风机的作用下可进行自由摆动且进一步可控摆动在地上划线,具有很好的重复性,并且可 以设定摆动方向且画短线,已经能够在将风力摆拉起一定角度放开后可以在规定时间内达到平衡。 关键词:风力控制摆、陀螺仪、轴流风机、PWM B速、MSP43C单片机 风力摆控制系统(B题) 1方案设计与选择 1.1设计内容 要求一个下端悬挂有(2~4只)直流风机的细管上端固定在结构支架上,只由风机提供动力,构成一个风力摆,风力摆上安装一个向下的激光笔。通过单片机代码指令控制驱动风机使风力摆按照一定的规律运动,并使激光笔在地面画出要求的轨迹,风力摆结构图如图1所示。 图1风力摆结构图 1.2设计要求 1.2.1基本要求 (1)从静止开始,15s内控制风力摆做类似自由摆运动,使激光笔稳定地在地面画出一条长度不短于50cm的直线段,其线性度偏差不大于土 2.5cm,并且具有较好的重复性; ⑵从静止开始,15s内完成幅度可控的摆动,画出长度在30~60cm间可设置,长度偏差不大于土 2.5cm的直线段,并且具有较好的重复性; (3)可设定摆动方向,风力摆从静止开始,15s内按照设置的方向(角度)摆动,画

出不短于20cm的直线段; (4)将风力摆拉起一定角度(30~45 ° )放开,5s内使风力摆制动达到静止状态。 1.2.2发挥部分 (1) 以风力摆静止时激光笔的光点为圆心,驱动风力摆用激光笔在地面画圆,30s内 需重复3次;圆半径可在15~35cm范围内设置,激光笔画出的轨迹应落在指定半径 ± 2.5cm的圆环内; (2) 在发挥部分(1)后继续作圆周运动,在距离风力摆1~2m距离内用一台50~60W台扇在水平方向吹向风力摆,台扇吹5s后停止,风力摆能够在5s内恢复发挥部分(1)规定的圆周运动,激光笔画出符合要求的轨迹; (3) 其他。 2总体方案设计与选择 2.1单片机选择 方案一:采用STC89S51芯片,该款芯片具有高性能低功耗的特点,具有32位输入/ 输出,可以实现处理、存储等功能⑴,但是其灵活性不高,需实时保护软件现场,否则易丢失信息,存储能力较弱。 方案二:采用MSP430F14芯片,该款芯片具有高性能,低功耗的特点,其抗干扰能力比较强,存储空间较大,稳定性较强。 二者比较之下,选择方案二作为此次设计的核心控制部分。 2.2直流风机选择 方案一:采用12V 4.5A的轴流风机,风力很大,可以将自身轻松吹起,但是体积较大,质量较重。 方案二:采用12V 1.5A的小风机,体积小,质量轻。但是风力足够大,单电机产生 的风力可吹起4个相同电机

51单片机风力摆设计方案

2015年全国大学生电子设计竞赛 风力摆控制系统 (B题) 2015年8月15日

摘要 本设计以IAP15W4K58S4单片机为控制核心,支持6路pwm 输出,根据51单片机的易用性、多功能性,以及低成本等特点,我们选择了它作为风力摆的控制核心。风力摆系统采用18650锂电池供电,配合自焊驱动电路板,根据内部程序,对风力摆上直流电机进行调速控制。通过控制不同方向直流电机的转速,从而向空气产生各个方向的不同的力,再通过空气对风力摆的反向作用力,以完成题目要求的风力摆做出的动作。 1.方案论证 本系统主要由单片机控制模块、姿态采集模块、电源模块,控制算法、直流调速系统等部分组成,下面分别论证这几个模块的选择。 1.1直流调速系统的论证与选择 方案一:静止可控整流器。简称V-M系统。 方案二:脉宽调速系统。 V-M系统的缺点是晶闸管的单向导电性,它不允许电流反向,给系统的可逆运行造成困难。它的另一个缺点是运行条件要求高,维护运行麻烦。最后,当系统处于低速运行时,系统的功率因数很低,并产生较大的谐波电流危害附近的用电设备。 与V-M系统相比,PWM调速系统有下列优点: (1)由于PWM调速系统的开关频率较高,仅靠电枢电感的滤波作用就可以获得脉动很小的直流电流,电枢电流容易连续,系统的低速运行平稳,调速范围较宽,可达1:10000左右。由于电流波形比V-M系统好,在相同的平均电流下,电动机的损耗和发热都比较小。

(2)同样由于开关频率高,若与快速响应的电机相配合,系统可以获得很宽的频带,因此快速响应性能好,动态抗扰能力强。 (3)由于电力电子器件只工作在开关状态,主电路损耗较小,装置效率较高。 根据以上综合比较,本设计中采用PWM调速系统对直流电机进行调速。 1.2 电源方案的论证与选择 方案一:使用单电源接自制线性直流稳压源模块。单电源同时给控制系统和风机供电,方案简单易操作。但风机转动过程中不仅会给电源带来纹波,而且产生反电压容易使单片机被烧毁。且单电源工作负载大,耗电快。 方案二:采用双电源供电。风机驱动电源和单片机控制电源分开,单片机使用12V 锂电池配合L298N驱动模块供电,直流风机则用18650配合自焊驱动电路板进行供电。此方案可确保系统的稳定性,方便对电机进行PWM调速,且满足了系统对供电需求。 综合上述比较,考虑系统的安全性、稳定性以,本系统采用方案二。 1.3 角度测量方案的选择与论证 方案一:只测量风力摆关于静止状态时的偏转角。采用二维平面内角位移传感器测量风力摆转动时关于静止状态时的偏转角,通过控制该偏转角反馈给单片机执行控制算法实现对风机的控制。该方案软件处理繁琐,且二维平面内的角位移传感器不利于测量风力摆的空间位置,不利于实现对风力摆的精确控制。 方案二:采用MPU-6000(6050)模块。模块集成加速度计和陀螺仪,以数字输出6轴的旋转矩阵、四元数(quaternion)、欧拉角格式(Euler Angle forma)的融合演算数据,得到风力摆姿态角,再通过控制算法对直流风机进行控制。6050模块能测得三轴陀螺仪和三轴加速度数据,能计算出风力摆的精确姿态角,从而实现对风力摆的精确控制。本系统选用6050模块的方案。 1.4 控制算法的论证与选择 方案一:采用模糊控制算法, 模糊控制有许多良好的特性,它不需要事先知道对象的数学模型,具有系统响应快、超调小、过渡过程时间短等优点,但编程复杂,数据处理量大。 方案二:采用PID算法,按比例、积分、微分的函数关系,进行运算,将其运算结果用以输出控制。优点是控制精度高,且算法简单明了。对于本系统的控制已足够精确,节约了单片机的资源和运算时间。本系统选择方案二。

简易计算器的设计与实现

沈阳航空航天大学 课程设计报告 课程设计名称:单片机系统综合课程设计课程设计题目:简易计算器的设计与实现 院(系): 专业: 班级: 学号: 姓名: 指导教师: 完成日期:

沈阳航空航天大学课程设计报告 目录 第1章总体设计方案 (1) 1.1设计内容 (1) 1.2设计原理 (1) 1.3设计思路 (2) 1.4实验环境 (2) 第2章详细设计方案 (3) 2.1硬件电路设计 (3) 2.2主程序设计 (7) 2.2功能模块的设计与实现 (8) 第3章结果测试及分析 (11) 3.1结果测试 (11) 3.2结果分析 (11) 参考文献 (12) 附录1 元件清单 (13) 附录2 总电路图 (14) 附录3 程序代码 (15)

第1章总体设计方案 1.1 设计内容 本设计是基于51系列的单片机进行的十进制计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除1位无符号数字的简单四则运算,并在6位8段数码管上显示相应的结果。 设计过程在硬件与软件方面进行同步设计。硬件方面从功能考虑,首先选择内部存储资源丰富的8751单片机,输入采用4×4矩阵键盘。显示采用6位8段共阳极数码管动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。编程语言方面从程序总体设计以及高效性和功能性对C语言和汇编语言进行比较分析,最终选用汇编语言进行编程,并用protel99se涉及硬件电路。 1.2 设计原理 在该课程设计中,主要用到一个8751芯片和串接的共阳数码管,和一组阵列式键盘。作为该设计的主要部分,下面将对它们的原理及功能做详细介绍和说明。 1)提出方案 以8751为核心,和数码管以及键盘用实验箱上已有的器件实现计算器的功能。 2) 总体方案实现 (1)要解决键值得读入。先向键盘的全部列线送低电平,在检测键盘的行线,如果有一行为低电平,说明可能有按键按下,则程序转入抖动检测---就是延时10ms再读键盘的行线,如读得的数据与第一次的相同,说明真的有按键按下,程序转入确认哪一键按下的程序,该程序是依次向键盘的列线送低电平,然后读键盘的行线,如果读的值与第一次相同就停止读,此时就会的到键盘的行码与列码

AT89C51单片机简易计算器的设计

AT89C51单片机简易计算器的设计 单片机的出现是计算机制造技术高速发展的产物,它是嵌入式控制系统的核心,如今,它已广泛的应用到我们生活的各个领域,电子、科技、通信、汽车、工业等。本设计是基于51系列单片机来进行的数字计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除六位数范围内的基本四则运算,并在LCD上显示相应的结果。设计电路采用AT89C51单片机为主要控制电路,利用MM74C922作为计算器4*4键盘的扫描IC读取键盘上的输入。显示采用字符LCD静态显示。软件方面使用C语言编程,并用PROTUES仿真。 一、总体设计 根据功能和指标要求,本系统选用MCS-51系列单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。具体设计如下:(1)由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LCD 显示数据和结果。 (2)另外键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键和等号键,故只需要16 个按键即可,设计中采用集成的计算键盘。 (3)执行过程:开机显示零,等待键入数值,当键入数字,通过LCD显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数

值,按等号就会在LCD上输出运算结果。 (4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LCD上提示溢出;当除数为0时,计算器会在LCD 上提示错误。 系统模块图: 二、硬件设计 (一)、总体硬件设计 本设计选用AT89C51单片机为主控单元。显示部分:采用LCD 静态显示。按键部分:采用4*4键盘;利用MM74C922为4*4的键盘扫描IC,读取输入的键值。 总体设计效果如下图:

基于STM32的风力摆控制系统的设计

龙源期刊网 https://www.360docs.net/doc/061964963.html, 基于STM32的风力摆控制系统的设计 作者:黄一珀丁斌董杨潘嘉睿 来源:《中国新通信》2016年第22期 【摘要】该风力摆控制系统是由单片机控制核心、ADXL345 数字三轴重力加速度芯片、直流电机、电机驱动模块以及液晶显示模块几个部分构成的闭环系统。利用单片机产生不同占空比的PWM波给驱动模块让其产生正弦波驱动为电机提供工作电压,运用相位合成和占空比调节实现对风力摆的运动轨迹控制,通过实际数据试验出风力摆的控制规律,稳定的完成了风力摆的直线运动和曲线运动要求。 【关键词】正弦波角度传感器直流电机 一、设计方案及原理分析 本系统由机械结构、控制模块、电机驱动模块、摆杆角度测量模块、电机和电源等组成,下面分别论证一下几个模块的选择。 1.1机械结构的设计方案 风力摆控制系统是一个完整的测量控制系统,其中的机械结构则是这个测控系统的对象,对象的好坏在很大程度上会影响到后期控制算法的设计,对象制作的越稳定可靠,系统的性能就会越好。所以在制作这样一个精密控制系统的时候,前期的机械结构的制作是非常关键的一步,在制作的时候要尽量确保它的稳定性,例如选用合适的材料、采用尽量好的制作工艺等。该风力摆控制系统中,机械结构大概分成以下几部分,风机、摆杆、摆杆转轴、底座和激光笔。 1.2控制模块方案 采用STM32F103单片机作为主控芯片。STM32F103基于高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex—M3内核,强大的定时、中断功能,方便对传感器模块和电机的控制,可以快速进行复杂的运算。同时具有大容量的RAM和ROM,可存储大容量的程 序。编程时可以直接调用库函数,提高编程效率。能够较为迅速的从传感器中采集数据进行处理,并快速反馈给电机进行下一步动作。 1.3电机驱动模块方案 采用L298N驱动。L298N是一种全桥驱动芯片,它响应频率高,一片L298N可以分别控制两个直流电机,而且还带有控制使能端。用该芯片作为电机驱动,操作方便,结合单片机可实现对电机速度的精确控制,调速特性优良、调整平滑、调速范围广、过载能力大,能承受频率的负载冲击,还可以实现频率的无级快速启动、制动和反转。

风力摆控制系统设计报告

2015 全国大学生电子设计竞赛 风力摆控制系统(B题) 【本科组】 2015年8月15日

摘要:本设计是基于STM32F103VE单片机为核心的简易风力摆控制系统,该系统由电源供电模块,直流风机及驱动模块、角度检测模块、信息处理模块、继电器及驱动模块、蜂鸣指示模块和液晶显示模块构成。STM32F103VE通过改变PWM占空比来实现对直流风机速度及方向的控制,该风力摆控制系统能够实现题目要求,简单做直线运动、复杂做圆周运动。 关键字:风力摆角度传感器单片机自动控制系统 一.方案论证: 1.系统结构 1)机械结构如图1所示。 一长约67cm的吸管上端用万向节固定在支架上,下方悬挂4只直流风机,中间安装陀螺仪,构成一风力摆。风力摆下安装一向下的激光笔,静止时,激光笔下端距离地面18cm。 图 1 2)测控电路结构 测控电路结构如图2所示。 编码器按键

图2 2.方案比较与选择 其实整体电路架构上图已经给定,主要是几个关键部分————直流风机选型及架构、直流风机驱动电路、传感器、主控芯片选择,我们分析如下: 1)直流风机的选型 方案一:采样大电流成品直流风机,虽然风力够大,但驱动多个风机所需电流过大,单个电源难以满足要求,而且比较重,多个电机使得惯性过大难以控制。鉴于以上两点,弃用。 方案二:采用小型高速电机加螺旋桨自制直流风机,风力大,体积小,质量轻,而且性价比高。 风力摆控制系统风机质量轻,减小惯性,容易起摆;风力大,风速控制范围大,摆动角度大;体积小,减少外部的干扰;鉴于以上几点,本设计采用方案二。 STM32微处理器 角度传感器 直流风机 电机驱动电路 风机供电 OLED 液晶显示 蜂鸣器

简单计算器设计报告

简单计算器设计报告 045 一、基本功能描述 通过文本编辑框实现基本整数的加减乘除运算 二、设计思路 如下图是整个程序进行的流程图,基本方法是在ItemText文本编辑框输入字符,程序对字符进行判断,若输入不是数字则提示错误。输入正常时,通过下拉框ComboBox_InsertString 选择相应运算符。点击等号IDC_OK,即可得出运算结果。操作简便,算法简单。 三、软件设计 1、设计步骤 打开Microsoft Visual C++ 6.0,在文件中点击新建,在弹出框内选择MFC AppWizard[exe]工程,输入工程名zhoutong及其所在位置,点击确定 1

将弹出MFC AppWizard-step 1对话框,选择基本对话框,点击完成 MFC AppWizard就建立了一个基于对话窗口的程序框架

四、主要程序分析 1、字符判定函数 BOOL IsInt(TCHAR*str) { int i=atoi(str); TCHAR strtemp[256]; wsprintf(strtemp,"%i",i); if(strcmp(str,strtemp)!=0) { return FALSE; } Else { return TRUE; } } 该函数通过atoi把文本编辑框读取的字符转换为数字,再通过wsprintf把转换数字转换为字符,通过strcmp比较原字符和转换得来的字符。如相同返回true,不通则返回false. 3、运算符选择程序 BOOL Main_OnInitDialog(HWND hwnd, HWND hwndFocus, LPARAM lParam) { HWND hwndComboOP=GetDlgItem(hwnd,IDC_COMBOOP); ComboBox_InsertString(hwndComboOP,-1,TEXT("+")); ComboBox_InsertString(hwndComboOP,-1,TEXT("-")); ComboBox_InsertString(hwndComboOP,-1,TEXT("*")); ComboBox_InsertString(hwndComboOP,-1,TEXT("/")); return TRUE; } 3

基于LabVIEW的简易计算器设计

第1章绪论 1.1 虚拟仪器简介 虚拟仪器(virtual instrument)是基于计算机的仪器。计算机和仪器的密切结合是目前仪器发展的一个重要方向。粗略地说这种结合有两种方式,一种是将计算机装入仪器,其典型的子就是所谓智能化的仪器。随着计算机功能的日益强大以及其体积的日趋缩小,这类仪器功能也越来越强大,目前已经出现含嵌入式系统的仪器。另一种方式是将仪器装入计算机。以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指这种方式。上面的框图反映了常见的虚拟仪器方案。 虚拟仪器实际上是一个按照仪器需求组织的数据采集系统。虚拟仪器的研究中涉及的基础理论主要有计算机数据采集和数字信号处理。目前在这一领域内,使用较为广泛的计算机语言是国NI公司的LabVIEW。 虚拟仪器的起源可以追溯到20世纪70年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。PC机出现以后,仪器级的计算机化成为可能,甚至在 Microsof t公司的 Windows 诞生之前,NI公司已经在Macintosh计算机上推出了LabVIEW2.0 以前的版本。对虚拟仪器和 LabVIEW [2]长期、系统、有效的研究开发使得该公司成为业界公认的权威。目前LabVIEW 的最新版本为 LabVIEW2011,LabVIEW 2009 为多线程功能添加了更多特性,这种特性在1998 年的版本 5 中被初次引入。使用 LabVIEW 软件,用户可以借助于它提供的软件环境,该环境由于其数据流编程特性、LabVIEW Real-Time 工具对嵌入式平台开发的多核支持,以及自上而下的为多核而设计的软件层次,是进行并行编程的首选。 普通的 PC 有一些不可避免的弱点。用它构建的虚拟仪器或计算机测试系统性能不可能太高。目前作为计算机化仪器的一个重要发展方向是制定VXI 标准,这是一种插卡式的仪器。每一种仪器是一个插卡,为了保证仪器的性能,又采用了较多的硬件,但这些卡式仪器本身都没有面板,其面板仍然用虚拟的方式在计算机屏幕上出现。这些卡插入标准的 VXI 机箱,再与计算机相连,就组成了一个测试系统。VXI仪器价格昂贵,目前又推出了一种较为便宜PXI 标准仪器。 1.2 LabVIEW简介 LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发,类似于C 和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语

风力摆控制系统设计报告

风力摆控制系统设计报 告 文件编码(008-TTIG-UTITD-GKBTT-PUUTI-WYTUI-8256)

大学生电子设计竞赛 风力摆控制系统 学院: 计算机学院 项目:风力摆控制系统 负责人:王贤朝 指导老师:张保定 时间: 2017年5月20日

摘要 本系统采用K60开发板作为控制中心,与万向节、摆杆、直流风机(无刷电机+扇叶)、激光头、反馈装置一起构成摆杆运动状态与风机速度分配的双闭环调速系统。单片机输出可变的PWM波给电机调速器,控制4个方向上风机的风速,从而产生大小不同的力。利用加速度计模块MPU6050,准确测出摆杆移动的位置与中心点位置之间的关系,采样后反馈给单片机,使风机及时矫正,防止脱离运动轨迹。使用指南针模块判别方向,控制系统向指定方向偏移。控制方式采用PID算法,比例环节进行快速响应,积分环节实现无静差,微分环节减小超调,加快动态响应。从而使该系统具有良好的性能,能很好地实现自由摆运动、快速制动静止、画圆、指定方向偏移,具有很好地稳定性。 关键词:K60、空心杯电机、MPU6050、PID、无线蓝牙 目录

风力摆控制系统(B题) 【本科组】 一、系统方案 系统基本方案 控制方案设计 为了实现题目要求我们采用K60单片机做为主控芯片,用加速度计陀螺仪模块MPU6050来计算角度和风机状态,用直流风机带动摆杆运动。当MPU6050检测到摆杆的角度时,可根据三角函数公式计算出摆杆现在距离中心的具体位置(方向、距离),单片机会控制PWM波的输出大小来控制风机的风速与方向,使摆杆达到在特定位置静止或按照一定的轨迹运动。当摆杆处于自然下垂状态时,给四个风机同时上电且风向都向外,此时摆杆仍处于受力平衡——静止状态。此时降低X轴上一个风机的转速,摆杆将会带动激光头在X轴上画一条直线,当达到一定的倾斜角度时,单片机可根据角度计算出此时距离中心的距离是否>=25cm,若达到要求后,此风机减速,X轴反方向上电机逐渐加速,恢复到初始速度,反方向做相同的运动。在此过程中,单片机做出A/D采样,Y轴方向方向风机随时做出矫正,防止发生轨迹偏移。 机械结构方案设计 由于摆杆长度(60cm~70cm)较长,且要求激光头在地面画出15cm~35cm的圆,所以要求横杆的距离要足够长。横杆长度较长加之摆杆重量较大,所以要求底座要有足够的重量来支撑整个系统。如果结构不稳或者重量不够,摆杆运动过程中将会产生倾倒或者抖动等现象,影响测试结果。于是,底座采用了“工”型结构,保证了整个系统的稳定性。摆杆材料方面,我们选用轻便的硬

第02讲 简易计算器的设计

第02讲计算器 2.1 计算器简介 大家都知道,计算器是日常生活中不可缺少的一个工具,在Microsoft的Windows操作系统中,附带了一个计算器程序,有标准型和科学型两种模式。Windows XP下的标准型和科学型计算器程序分别如图2-1和图2-2所示。 图2-1 Windows XP下的标准型计算器 图2-2 Windows XP下的科学型计算器 Windows操作系统下附带的计算器程序功能相当的强大,本课我们将模仿Windows的计算器,使用Visual C# 2005开发平台开发一个功能相对简单的计算器应用程序,它能完成加、减、乘、除运算。 接下来详细的介绍简易计算器的设计方法和步骤。

2.2 界面设计及属性设置 用户界面设计是软件开发中非常重要的一个部分,用户界面的好坏直接影响软件的质量,本节将介绍如何设计简易计算器的用户界面以及界面上各控件的属性设置。 2.2.1 界面设计 打开Visual Studio 2005开发工具,新建一个Windows应用程序,然后在窗体上依次放置1个TextBox和17个Button控件,如图2-1所示(设置好属性后)。 图2-1 计算器用户界面 2.2.2 属性设置 窗体和各控件的属性设置如表2-1所示。 表2-1 窗体和各控件的属性

2.3 编写代码 本程序需要用到一些公共变量,例如用来接收操作数、运算结果,判断输入的是否为小数等,因此首先在代码的通用段声明以下变量: //****************************************************************** double num1, num2, result; // 操作数及运算结果 bool decimalFlag = false; // 判断输入的是否为小数 string myOperator; // 操作类型 //******************************************************************

风力摆控制系统论文

风力摆控制系统 摘要:本系统采用STM32F103ZET6单片机作为控制核心,通过对置于风力摆上的MPU9150陀螺仪采集的角度进行处理得到角度与风力摆位置的关系,再通过驱动输出PWM波控制轴流风机,使风力摆到达指定的位置,做规定的圆周运动。本系统通过PID调试,测试表明,各项功能已达到或超过本题目要求。 关键词:MPU9150;PID;轴流风机

1.系统方案 本系统主要由主控制器,陀螺仪,电机驱动模块,轴流风机,激光笔组成,下面分别对这几个模块进行选择与论证。 1.1陀螺仪的选择 方案一:MPU6050。 9轴运动处理传感器,它集成了3轴MEMS陀螺仪,3轴MEMS 加速度计,以及一个可扩展的数字数字运动处理器DMP,可用I2C接口连接一个第三方的数字传感器,比如磁力计。MPU-6050对陀螺仪和加速度计分别用了三个16位的ADC,将其测量的模拟量转化为可输出的数字量。一个片上1024字节的FIFO,有助于降低系统功耗。但零飘较严重。 方案二:角度传感器。当连结到RCX上时,轴每转过1/16圈,角度传感器就会计数一次。往一个方向转动时,计数增加,转动方向改变时,计数减少。计数与角度传感器的初始位置有关。当初始化角度传感器时,它的计数值被设置为0。角度传感器一般测静态的角度,倾角用加速度计。明显在本系统中角度传感器不如陀螺仪方便使用。 方案三:MPU9150。MPU-9150 是采用系统级封装 (SiP),集合了两个芯片:MPU-6050 和 3 轴数字罗盘 AK8975,其中 MPU-6050 包含 3 轴陀螺仪、3 轴加速计以及能够处理复杂 9 轴 MotionFusion 算法的板载Digital Motion Processor? (DMP?) 。这款元件集成 9 轴 MotionFusion 算法,能够访问所有内部传感器,以收集全套传感器数据。MPU9150测转角的速度的,可以积分得到转的角度,动态性能好,静态差,零飘基本无,很适合本系统。 综合考虑后决定采用方案三。 1.2轴流风机的选择 方案一:四线可测速、包含温控PWM调速轴流风机。此种轴流风机一般重量较大,启动时间长,虽然风量大但明显不适合本系统的实时检测调整的思路。 方案二:三线可测速轴流风机。此种轴流风机重量较轻,启动时间短,直接接驱动即可对其进行控速,风量也很大,比较符合题目各项要求的时间限制。 综合考虑后决定采用方案二。

简易计算器设计实验报告

简易计算器设计实验报告 一.设计任务及要求 1.1实验任务: 根据计算器的原理设计一个具有加减乘除功能的简易计算器。如:5+3*4/8=4。 1.2 实验基本要求: (1)实现最大输入两位十进制数字的四则运算(加减乘除)。 (2)能够实现多次连算(无优先级,从左到右计算结果)。 如:12+34*56-78/90+9=36 (3)最大长度以数码管最大个数为限,溢出报警。 二.实验设计方案 (1)用QuartusII的原理图输入来完成系统的顶层设计。 (2)用VHDL编写以及直接拖模块来各功能模块。 (3)通过2个脉冲分别实现个位数和十位数的输入。 (4)通过选择每次的输出数值,将输出值反馈到运算输入端 (4)通过除法运算实现十六进制到十进制的转换输出。 其具体实现流程图如下:

三系统硬件设计 FPGA: EP2C5T144C8目标板及相应外围硬件电路。(从略) 四系统软件设计 1.数据输入模块 原理:用VHDL创建模块,通过两个脉冲分别对两个数码管进行输入控制,再通过相应运算模块将两个独立数据转化成两位十进制数字。 2.运算模块 原理:用VHDL创建模块,四种运算同步运行,通过按键加、减、乘、除选择输出对应的计算结果,当按键等号来时,将所得结果反馈给运算模块输入端。具体实现代码见附录二。 3.输出模块 原理:用VHDL创建模块,通过按键等号来控制显示运算对象还是运算结果,当等号按下时,输出计算结果,否则显示当前输入的数据,并且通过除法模块将十六进制转化为十进制。当输出结果溢出是LED0亮,同时数码管显示都为零。部分实现见附录二。 五实验调试 输入数据12,再按加法键,输入第二个数字25,按等号键,数码管显示37;按灭加法、等号键,输入第二个数据2,依次按等号键,减法键,数码管显示35;同上,按灭减法键、等号键,输入第三个数据7,依次按等号键,除法键,数码管显示5;按灭除法键、等号键,输入第四个数据99,依次按等号键,乘法键,数码管显示495,按灭乘法键、等号键,当前显示为99,依次按等号键、乘法键,数码管显示49005,同上进行若干次之后,结果溢出,LED0亮,同时数码管显示都为零。当输出为负数时,LED0灯变亮,同时数码管显示都为零。六实验结论 本实验基本实现了计算器的加减乘法运算功能,但是存在一个突出的缺陷,就是当输出结果时,必须先按等号键导通数据反馈,再按运算键选择输出结果。这与实际应用的计算器存在很大的差距。但是,本设计可以通过等号键实现运算对象和运算结果之间的切换。

单片机设计简易计算器

简易计算器 Simply Calculator 1 设计思想 此计算器有键盘部分、单片机、显示部分三部分组成,键盘部分主要完成输入功能;单片机主要完成数据处理功能,包括确定按键,完成运算,以及输出数据;显示器部分主要完成单片机输出的显示。 本设计的思路是利用单片机性能好,稳定性强的优点来实现系统的运行。设计大致可以分为三个步骤:第一步,硬件的选取和设计;第二步,程序的设计和调试;第三步,Protues 系统仿真。 硬件是设计的骨骼,不仅关系到设计总体方向的确定,还要综合考虑节能,环保,以及稳定性和经济性等各种因素。因此需要花费大量的时间。硬件的选取最为重要,包括选用的芯片,显示设备的选取,输入设备的选取等。本设计是通过单片机来实现的,因此选用了ATMEGA16单片机作为主体,输入设备选用矩阵键盘。程序是硬件的灵魂,是实现设计的中心环节。本设计使用的程序语言是C语言,在“ICC AVR”中运行,调试,直到运行出正确结果,然后输出后缀名为.HEX格式的文件,以备在Protues中仿真使用。程序是设计的关键,程序的调试需要大量的时间,耐心,还够要有足的细心才能成功。本设计中就出现了大量的错误,经过认真修改,最终才能运行出正确结果。最后的系统仿真是设计是否成功的验证,是设计不可缺少的重要环节。这就要求能掌握Protues的一些基本操作。2原理分析 2.1矩阵键盘的扫描 图2.1 矩阵键盘图

如图2.1所示,单片机的8个I/O口和矩阵键盘相连,用8个I/O口来控制矩阵键盘的16个按键是非常有意思的,首先我们设置单片机的PD0—PD7为输出,且PD0—PD3依次设置为低电平,而PD4—PD7设置为高电平,然后我们设置PD4—PD7为输入,而PD0—PD3仍然为输出,假如此时M1键按下,则PD0与PD4相连,因为PD0是低电平,而PD4是输入,所以PD4会被拉为低电平,同理,如果M2被按下,则PD5会被拉低,M3按下,PD6会被拉低,M4按下,PD7被拉低。这是判断有无键盘按下的过程,当我们判断是那一个键盘按下时,我们首先设置8个I/O口为输出,输出为FE,即,PD0为低电平,其他全为高电平,然后我们设置PD4—PD7为输入,如果M1被按下,则PD4会比被拉为低电平,此时会变成EE,同理可以知道M2被按下时会变为DE,M3被按下时会变为BE,M4被按下时会变为7E。同理我们可以设置8个I/O口输出FD来检测M5—M8是否被按下,设置8个I/O口输出FC来来检测M9—M12,设置8个I/O口输出F7来检测M13—M16,如果M1—M4没有被按下,就继续检测M4—M8,一次类推,就可以检测出16个按键了。在这次设计中,16个按键M1—M16所对应检测值分别为:EE,DE,BE,7E,ED,DD,BD,7D,EB,DB,BB,7B,E7,D7,B7,77。 2.2 数字显示与计算 本次设计选用的显示器是1602液晶显示器,此液晶显示器能显示32个字符,VSS接地,VDD接电源正极,E为时使能信号,R/W为读写选择端(H/L),RS为数据/命令选择端(H/L),D0—D7为数据I/O口。 首先我们初始化液晶显示器,然后显示出第一个被按下的数,并且使光标右移,如果有第二个数按下,则据继续显示,以此类推,然后把所有显示出来的数换算成一个数,如果按下“+”号,则显示出“+”,并且同理显示出“+”号后面按下的数字,然后调用加子程序,运算出结果,如果按下的是“-”,则调用减子程序,如果按下“*”,则调用乘子程序,如果按下“/”,则调用除子程序。然后再调用显示结果子程序,显示出结果。

风力摆控制系统 设计报告

摘要:本系统主要是以STM32单片机为控制芯片控制4只直流轴流风机,从而调节风机转速来控制使风力摆呈现不同状态的控制系统。该系统主要由主控板,无线遥控器,直流轴流风机,摆架框架等四大部分组成风力摆控制系统。 关键字:风力摆无线 STM32单片机直流轴流风机

一.系统方案 1.系统方案论证 本系统主要由遥控模块、控制模块、陀螺仪模块、直流轴流风机组成,添加一些辅助电路作为扩展功能。系统工作有六种工作模式,使用无线遥控切换模式并显示。下面分别论证这几个模块的选择。 1.1直流风机的论证与选择 方案一:使用直流鼓风机。直流鼓风机的机械摩擦非常小,具有较大的精度,并能提供足够的风力进行运动。但在实验过程中,风机启动速度较慢,且由于其自身重量过大,风摆在运动过程中受惯性影响极大,不能有效的完成任务要求。 方案二:采用直流轴流风机。直流轴流风机是在固定位置使空气流动,自身重量和体积都比较小,且出风口大,能够很好的提供动力与控制。在实验过程中能够较快的启动,并能较好的实现任务要求,符合实验需要。 综合以上两种方案,风力摆在运动过程中需要进行实时控制摆杆的姿态,且需要风机启停反应快,故选择方案二。 1.2控制器模块的论证与选择 根据设计要求,控制器主要用于计算摆杆姿态、控制直流轴流风机PWM、使摆杆能完成相应等功能。 方案一:采用STC89C51作为系统控制器。它的技术成熟,成本低。STC89C51是8位的单片机,数据传输速度慢,在用于精密的操作时,不能满足实时控制的要求,且复杂的控制算法难以实现,不利于控制。 方案二:采用意法半导体公司的STM32F103单片机作为控制器。STM32系列单片机是32位、RISC、低功耗的处理器。在进行高精密的操作时,处理能力非常强,运算速度快,具有很好的控制能力,且成本低,更符合实验要求。 综合考虑以上两种方案,采用方案二。 2.系统结构 根据上述方案的论证,我们确定以STC32F103作为控制核心,采用型号为PFB0812XHE的直流轴风机控制摆杆运动,用陀螺仪MPU6050检测状态数据,并将采集到的数据传输给控制板,然后通过单片机计算处理得出摆杆的姿态并调整直

简易计算器课程设计报告

《C++程序设计》(MFC)课程设计报告 设计题目:简易计算器 班级: 姓名: 学号: 指导教师: 时间:2010年6月30日

目录 1.设计目标…………………………………………………………… 2.设计内容…………………………………………………………… 3.设计思想…………………………………………………………… 4.设计说明…………………………………………………………… 5.设计步骤…………………………………………………………… 6.主要成员函数关系图……………………………………………… 7.程序主要代码……………………………………………………… 8. 难点分析…………………………………………………………… 9. 总结…………………………………………………………………

简易计算器(MFC) 1.设计目标 了解Windows应用程序的结构与DOS程序的不同,掌握应用MFC类库编写Windows应用程序的基本模式。 2.设计内容 以简易计算器为例,通过对简单应用软件计算器的设计,编制、调试,实现简单的加,减,乘,除等运算,以学习应用MFC库类编写对话框的原理,加深对C++类的学习及应用。 3. 设计思想 基于MFC库类对对话框界面的设计,通过创建类成员函数成员变量,编辑控件创建消息映射,调用消息函数完成数据的输入输出,实现计算功能。生成简单的应用软件。 4.设计说明 (1)包含的功能有:加、减、乘、除运算,开方、平方等功能。 (2)计算器上数字0—9为一个控件数组,加、减、乘、除为一个控件数组,其余为单一的控件。 (3)输入的原始数据、运算中间数据和结果都显示在窗口顶部的同一个标签中。 (4)计算功能基本上是用系统内部函数。 (5)程序可以能自动判断输入数据的正确性,保证不出现多于一个小数点、以0开头等不正常现象。 (6)“CE”按钮可以清除所有已输入的数据从头计算 5. 设计步骤 (1)选择FileNewlProject命令,选择MFC AppWizard(exe)创建Project名为Caa,按确定。在弹出界面选择创建对话框,单击Finish按钮 (2)在生成的设计界面中加入控件,得到计算器应用界面。如图:

简易计算器课程设计

评阅教师评语:课程设计成绩 考勤成绩 实做成绩 报告成绩 总评成绩指导教师签名: 课程设计报告 论文题目基于ARM的简易计算器设计 学院(系):电子信息与自动化学院 班级:测控技术与仪器 学生姓名:同组同学: 学号:学号: 指导教师:杨泽林王先全杨继森鲁进时间:从2013年 6 月10 日到2013年 6 月28 日 1

目录 1、封面—————————————————————P1 2、目录—————————————————————P2 3、前言—————————————————————P3 4、关键字————————————————————P3 5、原理与总体方案————————————————P3 6、硬件设计———————————————————P6 7、调试—————————————————————P10 8、测试与分析——————————————————P11 9、总结—————————————————————P13

10、附件—————————————————————P14 前言 近几年,随着大规模集成电路的发展,各种便携式嵌入式设备,具有十分广阔的市场前景。嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是是由单个程序实现整个控制逻辑。在嵌入式系统中,数据和命令通过网络接口或串行口经过ARM程序处理后,或显示在LCD上,或传输到远端PC上。 本文通过周立功的LPC2106芯片完成的简易计算器,正是对嵌入式应用的学习和探索。 一、摘要: 计算器一般是指“电子计算器”,是能进行数学运算的手持机器,拥有集成电路芯片。对于嵌入式系统,以其占用资源少、专用性强,在汽车电子、航空和工控领域得到了广泛地应用。本设计就是先通过C语言进行相应程序的编写然后在ADS中进行运行最后导入PROTUES进行仿真。最后利用ARM中的LPC2106芯片来控制液晶显示器和4X4矩阵式键盘,从而实现简单的加、减、乘、除等四则运算功能。 关键字:中断,扫描,仿真,计算 二、原理与总体方案: 主程序在初始化后调用键盘程序,再判断返回的值。若为数字0—9,则根据按键的次数进行保存和显示处理。若为功能键,则先判断上次的功能键,根据代号执行不同功能,并将按键次数清零。程序中键盘部分使用行列式扫描原理,若无键按下则调用动态显示程序,并继续检测键盘;若有键按下则得其键值,并通过查表转换为数字0—9和功能键与清零键的代号。最后将计算结果拆分成个、十、百位,再返回主程序继续检测键盘并显示;若为清零键,则返回主程序的最开始。 电路设计与原理:通过LPC2106芯片进行相应的设置来控制LCD显示器。 而通过对键盘上的值进行扫描,把相应的键值通过MM74C922芯片进行运算从而

风力摆控制系统设计报告

大学生电子设计竞赛 风力摆控制系统 学院: 计算机学院 项目:风力摆控制系统 负责人:王贤朝 指导老师:张保定 时间: 2017年5月20日

摘要 本系统采用K60开发板作为控制中心,与万向节、摆杆、直流风机(无刷电机+扇叶)、激光头、反馈装置一起构成摆杆运动状态与风机速度分配的双闭环调速系统。单片机输出可变的PWM波给电机调速器,控制4个方向上风机的风速,从而产生大小不同的力。利用加速度计模块MPU6050,准确测出摆杆移动的位置与中心点位置之间的关系,采样后反馈给单片机,使风机及时矫正,防止脱离运动轨迹。使用指南针模块判别方向,控制系统向指定方向偏移。控制方式采用PID算法,比例环节进行快速响应,积分环节实现无静差,微分环节减小超调,加快动态响应。从而使该系统具有良好的性能,能很好地实现自由摆运动、快速制动静止、画圆、指定方向偏移,具有很好地稳定性。 关键词:K60、空心杯电机、MPU6050、PID、无线蓝牙 目录

电路............................................................................. . (3)

风力摆控制系统(B题) 【本科组】 一、系统方案 系统基本方案 控制方案设计 为了实现题目要求我们采用K60单片机做为主控芯片,用加速度计陀螺仪模块MPU6050来计算角度和风机状态,用直流风机带动摆杆运动。当MPU6050检测到摆杆的角度时,可根据三角函数公式计算出摆杆现在距离中心的具体位置(方向、距离),单片机会控制PWM波的输出大小来控制风机的风速与方向,使摆杆达到在特定位置静止或按照一定的轨迹运动。当摆杆处于自然下垂状态时,给四个风机同时上电且风向都向外,此时摆杆仍处于受力平衡——静止状态。此时降低X轴上一个风机的转速,摆杆将会带动激光头在X轴上画一条直线,当达到一定的倾斜角度时,单片机可根据角度计算出此时距离中心的距离是否>=25cm,若达到要求后,此风机减速,X轴反方向上电机逐渐加速,恢复到初始速度,反方向做相同的运动。在此过程中,单片机做出A/D采样,Y轴方向方向风机随时做出矫正,防止发生轨迹偏移。 机械结构方案设计 由于摆杆长度(60cm~70cm)较长,且要求激光头在地面画出15cm~35cm的圆,所以要求横杆的距离要足够长。横杆长度较长加之摆杆重量较大,所以要求底座要有足够的重量来支撑整个系统。如果结构不稳或者重量不够,摆杆运动过程中将会产生倾倒或者抖动等现象,影响测试结果。于是,底座采用了“工”型结构,保证了整个系统的稳

java课程设计报告_简单图形界面计算器的设计

Java 课程设计 简单图形界面计算器的设计 课程名称 Java程序设计 选题名称简单图形界面计算器的设计 专业 班级 姓名 学号 指导教师 简单图形界面计算器的设计

一、设计任务与目标 本次java程序设计我的设计任务是设计一个图形界面(GUI)的计算器应用程序并且能够完成简单的算术运算。本次任务的基本要求是这个计算器应用程序可以完成十进制的加、减、乘、除、求倒、取余、开方运算,且有小数点、正负号、退格和清零功能。而我要在此基础上添加一项千位符分隔符的功能,即以三位为一级,在输入的一串数字中每三位加入一个逗号,这项功能国际通用,并已经成为惯例,会计记账都用这种方法便于账目核算与管理。 GUI计算器设计的具体目标: 1.完成十进制的加、减、乘、除、求倒、取余和开方运算; 2.有小数点和正负号加入运算; 3.有退格、复位和清零的功能; 4.有千位符分隔符的功能,即在输入的一串数字中每三位加入一个逗号。 二、方案设计与论证 1.设计目标的总体分析 (1)设计目标的需求分析:计算器是现在一个普遍应用的工具,能够解决许多人工所无法计算的数据,节省大量宝贵的时间。 (2)设计目标的功能分析:实现计算器系统的功能,主要有两个功能模块:输入和输出。 (3)设计原则:基于计算器系统要具有适用性广、操作简便等特点,本系统预计要达到以下几个目标:①满足以上的基本功能要求;②能够在常见的计算机及其操作系统上运行。 2.设计的基本思路 利用GUI的界面设计,将整个大设计分为三块,分别是数据的输入,运算符

功能符的控制和数据的输入输出显示。利用Swing控件,数据的输入由0~9这10个按钮来表示,用“+”、“-”、“*”、“/”、“1/x”、“%”、“sqrt”这7个按钮来表示加、减、乘、除、求倒、取余、开方运算,用“.”和“±”这2个按钮来表示小数点和正负号,用“Back”、“CE”和“C”这3个按钮来表示退格、复位和清零的功能,数据的输入输出显示由文本字段来表示。将计算器的总体界面设计好后,再将代码分别写入不同的按钮的源程序中。 我要完成的一项改进,即添加一个拥有千位符分隔符功能的按钮,按下这个按钮能够在输入的一串数字中每三位加入一个逗号并且显示出来。我要在之前的界面设计的基础上多添加一个按钮“$”来表示千位符分隔符,并且将功能代码写入这个按钮的源程序中。 三、程序流程图,程序清单与调用关系 1. 程序流程图:

相关文档
最新文档