上位机相关毕业论文.docx
《上位机相关毕业论文.docx》由会员分享,可在线阅读,更多相关《上位机相关毕业论文.docx(25页珍藏版)》请在冰豆网上搜索。
上位机相关毕业论文
上位机相关毕业论文
本科毕业论文(设计)
题目:
基于上位机控制的运动小车的设计与实现
院系:
物理与电子信息科学系
专业:
电子信息科学与技术
姓名:
田星星
学号:
070605401000
指导教师:
彭珊珊
教师职称:
讲师
摘要
机器人学的进步和应用是20世纪自动控制最有说服力的成就,是当代最高意义上的自动化”。
机器人技术综合了多学科的发展成果,代表了高技术的发展前沿,它在人类生活应用领域的不断扩大正引起国际上重新认识机器人技术的作用和影响。
随着计算机技术和人工智能技术的飞速发展,使机器人在功能和技术层次上有了很大的提高,移动机器人和机器人的视觉和触觉等技术就是典型的代表。
由于这些技术的发展,推动了机器人概念的延伸。
80年代,将具有感觉、思考、决策和动作能力的系统称为智能机器人,这是一个概括的、含义广泛的概念。
这一概念不但指导了机器人技术的研究和应用,而且又赋予了机器人技术向深广发展的巨大空间,水下机器人、空间机器人、空中机器人、地面机器人、微小型机器人等各种用途的机器人相继问世,许多梦想成为了现实。
本论文通过智能小车性能指标的分析,明确设计思路及原理,提出使用直流电机通过单片机对其控制在通过上位机对单片机进行远程控制的方案,并对各方案的优缺点进行对比,最终提出本次毕业设计的可行性方案。
围绕智能小车控制系统、上位机程序等的设计,论文中展开了对PC机与单片机之间的通信及原理的讨论,通过讨论,最终确定RS-232串口通信方案,从而满足设计要求。
本次毕业设计主要通过设计上位机控制的运动小车,掌握控制系统的一般设计方法,熟悉常用元器件,对所学单片机知识进一步强化,了解电路调试仿真的基本方法,培养综合应用所学理论知识来指导设计的能力。
关键词:
机器人;运动小车;计算机技术;人工智能;
Abstract
Roboticsprogressandapplicationisautomaticcontrolofthe20thcentury,isthemostpersuasiveachievementsofcontemporarysupremesense."robottechnologyintegratedautomationoftheachievementsofdevelopmentofmulti-disciplinary,representedthedevelopmentofhightechnologyinhumanlife,itsfrontierenlargementoftheapplicationofinternationalrecognizeagainisarousingtheroleandimpactofrobottechnology.Alongwiththecomputertechnologyandtherapiddevelopmentofartificialintelligencetechnology,maketherobotfunctionsandtechnologylevelhavegreatlyincreased,mobilerobotandrobotvisionandtouchtechnologyistypicalrepresentative.Becausethesetechnologydevelopment,promotetheconceptoftherobotoutspread.Inthe1980s,willhavefeel,think,decisionandactionabilitysystemcalledintelligentrobot,thisisageneral,meaningbroadconceptual.Thisconceptisnotonlyguidedrobottechnologyresearchandapplication,andalsogivesroboticsthehugespacetobrooddevelopment,underwaterrobot,robot,robot,theairspacerobot,micro-modulegroundvariousUSESofrobotfield,manydreamstobecomeareality.
Inthispaper,theanalysisoftheintelligentcarperformanceindex,clear,andputsforwarddesignideaandprincipleofusingdcmotorthroughitscontrolinsingle-chipmicrocontrollerbyusingcomputerremotecontroloftheschemeandtheadvantagesanddisadvantagesofeachschemecomparison,thepaperputsforwardthegraduationdesignisfeasiblescheme.Aroundintelligentcarcontrolsystem,PCprocedureofdesign,paperforPClaunchedwithofcommunicationbetweenthemicrocontrollerandprincipleofdiscussion,throughthediscussion,eventuallydetermineRS-232serialinterfacecommunicationsolutionstomeetthedesignrequirements.
ThegraduationprojectdesignPCcontrolmainlythroughthesportscar,mastercontrolsystem,thegeneraldesignmethodofcomponents,familiarwithcommonlyusedlearnedknowledgefurtherstrengthenthemicrocontroller,understandingthecircuitasthebasicmethodofdebuggingsimulationtrainingcomprehensiveapplicationstudiesthetheoryknowledgetoguidethedesignofability.
Keywords:
robot;Sportscar;Computertechnology;Artificialintelligence;
前言
机器人学的进步和应用是20世纪自动控制最有说服力的成就,是当代最高意义上的自动化”。
机器人技术综合了多学科的发展成果,代表了高技术的发展前沿,它在人类生活应用领域的不断扩大正引起国际上重新认识机器人技术的作用和影响。
随着计算机技术和人工智能技术的飞速发展,使机器人在功能和技术层次上有了很大的提高,移动机器人和机器人的视觉和触觉等技术就是典型的代表。
由于这些技术的发展,推动了机器人概念的延伸。
80年代,将具有感觉、思考、决策和动作能力的系统称为智能机器人,这是一个概括的、含义广泛的概念。
这一概念不但指导了机器人技术的研究和应用,而且又赋予了机器人技术向深广发展的巨大空间,水下机器人、空间机器人、空中机器人、地面机器人、微小型机器人等各种用途的机器人相继问世,许多梦想成为了现实。
智能小车是智能机器人的前身,也是大多机器人的基本构成部分之一,智能小车可以自我控制完成一些规定的任务或者是通过人对其进行远程的控制使它按照人们的旨意在一些人类无法工作的环境中代替人类完成一些复杂的高精度的工作,如壁障功能、循迹、语音提示、金属探测及转移、里程测量、角度测量、拆弹机器小车、救火机器小车等等。
这些功能可根据实际需要灵活组合,还可在此基础上不断扩展新的功能。
第一章运动小车的设计
第一节智能小车介绍
智能小车是智能机器人的前身,也是大多机器人的基本构成部分之一,智能小车可以自我控制完成一些规定的任务或者是通过人对其进行远程的控制使它按照人们的旨意在一些人类无法工作的环境中代替人类完成一些复杂的高精度的工作,如壁障功能、循迹、语音提示、金属探测及转移、里程测量、角度测量、拆弹机器小车、救火机器小车等等。
这些功能可根据实际需要灵活组合,还可在此基础上不断扩展新的功能。
一、设计任务及要求
(一)任务
设计一个运动小车的控制电路及相关外围电路。
小车可以与PC相互连接,通过PC机对小车的运动进行控制。
(二)要求
(1)设计一个可以控制小车的电路对小车左右两个电机进行控制。
(2)通过电机的转动小车可以实现前进、后退、左转、右转四个方向的运动。
(3)设计一直流稳压电源,可给电路提供+5V的电源,并且可以搭载在小车上。
(4)设计一个电路使得小车上的单片机可以与PC机进行通信。
(5)用VB设计一个上位机程序,通过程序可以对小车的运动状态进行
二、设计原理
运动小车控制系统是未来机器人组成部分,对运动小车控制系统的设计有利于未来更快的了解机器人及其相关知识,通过对控制系统电路的设计,对电机控制的了解,更好的巩固了单片机等学科的相关知识,另外通过对C语言及VB语言的设计更好的掌握了计算机语言的应用,对我们未来的学习、工作打下了坚实的基础。
运动小车控制系统主要分为两个部分:
(1)运动小车单片机控制系统,主要由单片机接收到上位机的命令,而后执行命令对运动小车进行控制,是的小车完成指定的动作。
单片机控制系统主要有单片机最小系统、电源电路、驱动电路、串口通信电路、状态指示电路组成。
(2)上位机程序主要是由VB程序所设计的一个对运动小车系统进行控制的界面,通过计算机串口将所下达的命令发送给小车上的单片机,单片机在接收命令后做出相应的动作。
第二节硬件系统设计
一、硬件系统结构
本系统由两个部分组成,一部分是上位机(PC)机控制系统,另一部分是运动小车系统。
运动小车系统是上位机(PC)机上的VB程序通过232串口与单片机进行通信,控制单片机,单片机控制电机驱动模块对小车的左右连个电机进行驱动,从而控制运动小车运动,电源系统为单片机和运动小车提供电能。
如图1-1所示:
图1-1硬件结构图
二、系统功能
本系统是属于运动小车的基本模块,通过PC机对小车进行控制,小车上可以搭载一下电子设备如摄像头、金属探测、红外传感、机械手等设备在一些人类无法工作的环境中代替人类完成一些进度较高、较复杂的工作。
三、硬件系统原理及原理图
(一)运动小车单片机控制部分原理图
本系统采用STC89C52单片机为主芯片,P04-P07为小车运动状态灯控制端口,P24-P27为小车运动状态控制端口,单片机系统裁员12M晶振,REP1是上拉电阻加强P0口的驱动能力,使用按键复位电路。
原路图如图1-2所示
图1-2STC89C52最小系统
(二)电机驱动模块原理图
常有的电机有伺服电机、调速电机和直流电机几种。
本设计采用的是直流电机作为动力装置,电机驱动电路采用电机专属驱动芯片L293D驱动,图2中IN1、IN3、EN1、EN2分别晕单片机上的P24-P27端口进行连接,单片机的控制信号通过74HC14芯片进行处理以后从IN1-IN4、MOTEN1、MOTEN2输入L293D芯片,从OUT1-OUT4输出,从而驱动小车的左右两个电机。
原理图如图1-3所示。
图1-3电机驱动电路
(三)L293D芯片介绍及相关参数
L293D芯片是一个单片集成的高电压、高电流四通道驱动器,用于接受的标准或DTL、TTL水平和逻辑驱动器电感性负载,如继电器和步进电机(直流电机)和开关电源。
L293D采用16引脚DIP封装,其内部集成了双极型H-桥电路,所有的开量都做成n型。
这种双极型脉冲调宽方式具有很多优点,如电流连续;电机可四角限运行;电机停止时有微振电流,起到“动力润滑”作用,消除正反向时的静摩擦死区:
低速平稳性好等。
L293D通过内部逻辑生使能信号。
H-1-4L293D引脚图
桥电路的输入量可以用来设置马达转动方向,使能信号可以用于脉宽调整(PWM)。
另外,L293D将2个H-桥电路集成到1片芯片上,这就意味着用1片芯片可以同时控制2个电机。
每1个电机需要3个控制信号EN1、IN1、IN2,其中EN2是使能信号,IN1、IN2为电机转动方向控制信号,IN1、IN2分别为1,0时,电机正转,反之,电机反转。
选用一路PWM连接EN12引脚,通过调整PWM的占空比可以调整电机的转速。
选择一路I/O口,经反向器74HC14分别接IN1和IN2引脚,控制电机的正反转,本设计中使用L293D驱动芯片,因为51单片机I/O口的输出电流为15MA左右,不能很好的对电机驱动,而L293D芯片可以提高输出的电压和电流,是的电机更好的工作,L293D的工作的真值表如表1-1所示。
ENA(B)
IN1(IN3)
IN2(IN4)
电机运动情况
H
H
L
正转
H
L
H
反转
H
同IN2(IN4)
同IN1(IN3)
快速停止
L
X
X
停止
表1-1L293D工作真值表
上表所示的是L293D芯片的工作真值表,表一是工作的直接用单片机驱动L293D的情况下,本设计为了可以节省I/O口,让小车能搭载更多的外围设备,避免了控制上的麻烦,所
以加入了74HC14与L293D共同工作,74HC14的目的是让L293D芯片IN1与IN2或IN3与IN4的输入信号始终不同,并且通过一个单片机的I/O口就可以控制。
本设计的驱动电路真值表为表二所示。
表1-2驱动电路真值表
IN1
IN3
EN1
EN2
MOTOR1(左)
MOTOR2(右)
运动小车
H
H
L
L
正转
正转
前进
L
L
L
L
反转
反转
后退
H
L
L
L
正转
反转
右转
L
H
L
L
反转
正转
左转
(四)小车运动系统电源
系统采用干电池供电,由4节1.8V干电池通过滤波电容,再通过LM7805将+7.2V直流电转换成单片机所需要的+5V电压,为系统提供稳定的电源。
原理图如图1-5所示。
图1-5电源电路
(五)232串口通信电路
本系统使用的232串口通信电路是使用MAX232芯片,芯片T1IN1与P31(TXD)口连接,T1OUT与P30口连接,图5中串口与PC机串口连接,原理图如图1-6所示。
图1-6串口通信电路
(六)MAX232芯片介绍及串口通信原理
MAX232是一块常用的电平转换芯片,有电脑的RS232电平是-10V~+10V,而一般的单片机应用系统的信号电压是TTL电平0~+5V,MAX232就是用来做这个电平转换的,该器件包括2个驱动器、2个接收器和一个电压发生器电路提供TIA/EIA-232-F电平。
本设计中使用的51单片机是具有全双工串行异步通信接口,可以同时发送、接受数据。
发送、接送数据可通过查询或中断方式来处理。
表1-3RS-232标准接口主要引脚定义
51单片机的串行有四种工作方式,由串行口控制寄存器SCON中的SM0和SM1决定,本设计使用的工作方式1为8为异步通信方式,在方式1工作下将REN设置为1,打开接收器,使得下位机工作在接收数据状态。
由接收器以所选波特率的16倍速率对RXD引脚上的电平进行采样。
本设计采用的是9600bps的比特率。
当采样到从“1”到“0”的负跳变时,启动接收控制器开始接受数据。
在接收移位脉冲的控制下依次吧所有接收的数据移入移位寄存器。
当8为数据及停止位全部移入后,RI接收中断标志位的状态,进行一定的响应操作。
在本设计中通过把接收SBUF中的数据送入P2口,来对P2口的数据进行控制,从而达到对小车运动状态控制的目的。
第二章上位机及下位机程序设计
第一节VB程序简介
VisualBasic即“可视化的”的Basic程序设计语言。
Basic是Beginner`sAll-purposesymmbolicInstructionCode(初学者通用符号指令代码)的缩写,它诞生于60年代初期,因其简单易学,使用方便,受到广达编程人员的一贯青睐。
本人所用的VisualBasic6.0版是1998年推出的,使得VisualBasic在开发环境、功能上进一步的完善和扩充,尤其是在数据库管理、网络编程等发面得到了更加广泛的应用。
第二节系统VB程序介绍
一、VB程序原理
本设计程序是通过对操作界面的设置、串口的设置、波特率的设置、小车运动状态的显示的VB程序的描述。
程序编写步骤如下
第一步建立操作界面并对界面参数进行设置
第二步主窗口加载代码From_load()
功能一:
加载COM口选项
功能二:
设置串口初始化
功能三:
程序小化到托盘代码
第三步COM口设置代码Combo1click()
第四步打开串口按钮代码(包括设置焦点到主窗口)Comopenclick()
第五步控制按钮代码Cmdqian_Click()、Cmdting_Click()、Cmdyou_Click()、
Cmdzhuo_Click()、Cmdhou_Click()
第六步键盘控制代码Fromkeypress(KeyAsciiAsInteger)
第七步建立公共模块(辅助功能三)
第八步调试并生成可执行文件EXE文件
二、VB操作界面介绍
本设计的操作界面名为小车控制平台,通过平台上的按键可以对小车进行控制,控制平台操作界面如图6所示。
图2-1VB操作界面
在控制界面中由红字后框中显示的是小车当前的运动状态,提醒驾驶者注意对小车的控制,波特率9600bps是VB程序中固化的用于串口通信中的波特率,是不可以改变的。
COM口设置是通过下拉菜单可以对PC机上所响应的COM口号做出现在,已完成小车与PC机之间的通信,左下角打开串口按键是控制串口的开关,当串口成功打开时右下角的绿灯会变为红灯否则会显示串口打开失败。
在界面中有前进、后退、左转、右转、停止五个工作状态的按键。
可以通过鼠标点击对小车进行控制。
与此同时由于VB程序中对键盘代码的导入,所以可用通过键盘上W、S、A、D、Q五个按键来对小车进行控制方便使用者。
第三节下位机程序
下位机是由单片机最小系统及外围电路组成的。
下位机程序是一个关于单片机串口通信的程序,是将串口通信的SBUF内的数据直接赋给了P2口。
程序见附录的下位机程序
第三章小车的制作与主要性能的调试
第一节
小车的制作
本设计中小车的制作主要是对小车上控制电路的制作,小车的车体用的是套件带有两个左右电机和一个7.2V的充电电池。
图2-2为按照本设计制作出的小车的实物图,图2-3为小车上搭载的控制电路的电路板和各个模块的的位置。
图3-1小车外观图
图3-2中①为外部电源输入端。
②为+5V电源输出端。
③为直流稳压源模块。
④和⑤为直流电机去驱动模块其中④是74HC14,⑤是L293D。
⑥为STC89C52单片机。
⑦为MAX232芯片及串行通信电路。
⑧为RS-232串口(标准9孔)
图3-2小车硬件分布图
第二节运动小车调试
一、小车的调试
本设计在对小车制作完成和在没有VB上位机的情况下首先是用串口调试小助手进行调试,通过串口调试小助手发送十六进制代码给下位机,从而对小车进行控制。
在后期对VB程序进行编写时将控制代码写入VB程序,从而可以通过上位机程序对小车进行控制。
控制代码如表三
表3-1小车控制代码
十六进制代码
小车运动状态
05
前进
00
后退
01
左转
04
右转
0F
停止
第四章关于运动小车无线通信的设计
第一节RF2401模块介绍
图4-1RF2401B模块
一、功能介绍
RF24012.4GHz无线通信模块主要功能如下:
(1)2.4Ghz全球开放ISM频段免许可证使用;
(2)最高工作速率1Mbps,高效GFSK调制,抗干扰能力强,特别适合工业控制场合;
(3)125频道,满足多点通信和调频通信需要
(4)内置硬件CRC检错和点对多点通信地址控制
(5)低功耗1.9-3.6V工作,待机模式下状态仅为1uA
(6)内置2.4Ghz天线,体积小巧;
(7)模块可软件设地址,只有受到本机地址时才会输出数据(提供中断指示),可直接接各种单片机使用,软件编程非常方便;
(8)内置专门稳压电路,使用各种电源包括DC/CD开关电源均有很好的通信效果
(9)标准DIP间距接口,便于嵌入式应用
(10)与51系列单片机P0口连接时候,需要加10K的上拉电阻,与其余口连接不需要。
(11)其他系列的单片机,如果是5V的,请参考该系列单片机I/O口输出电流大小,如果超过10MA,需要串联电阻分压,否则容易烧毁模块!
如果是3.3V的,可以直接和RF2401模块的I/O口线连接。
比如AVR系列单片机如果是5V的,一般串接2K电阻;
二、引脚介绍
(1)接口电路如图4-2所示
图4-2RF2401B模块引脚图
(2)2401B模块引脚介绍如表4-1所示:
表4-12401B模块引脚
引脚
名称
引脚功能
描述
1
PWR_UP
数字输入
芯片激活端
2
CE
数字输入
使nRF2401工作于接收或发送状态
3
CLK2
数字I/O
频道2接收数据时钟输入/输出
4
CS
数字输入
配置模式的片选端
5
CLK1
数字I/O
频道1接收数据时钟输入/输出
6
X
X
X
7
VCC
电源
电源正端
8
DR2
数字输出
频道2接收数据准备好
9
DOUT2
数字输出
频道2接收数据
10
DR1
数字输出
频道1接收数据准备好
11
DATA
数字I/O
频道1接收/发送数据端
12
GND
电源
电源地
第二节无线串口通信电路结构
(1)主机电路原理图
主机原路图加入了NRE2401B模块,PC机通过串口与主机获得通信,给主机输入相应的指令,主机通过对指令的识别将指令转换成代码,通过NRF2401B模块发送出去,主机电路除了有电源电路,串口电路以外,还加入了NRF2401的控制电路,原路图如图4-3所示。
图4-2主机通信模块
(2)从机电路原理图
从机电路与主机电路的无线通信模块是相同的,只是在程序上有区别,NRF2401B模块是一块收发一体的无线通信模块,只需要通过对CS和CE引脚的控制,就可以控制芯片