搜档网
当前位置:搜档网 › 智能小车速度控制程序

智能小车速度控制程序

智能小车速度控制程序
智能小车速度控制程序

/************************************************************************** **

简单寻迹程序:接法

EN1 EN2 PWM输入端,本程序不输入PWM,直接使插上跳线帽,使能输出,这样就能全速运行

接上测速模块

测速模块电源+5V GND 取自于单片机板靠近液晶调节对比度的电源输出接口

把测速模块输出OUT1 OUT2 接入单片机P3。2 P3。3

P1_0 P1_1 接IN1 IN2 当P1_0=1,P1_1=0; 时左上电机正转左上电机接驱动板子输出端(蓝色端子OUT1 OUT2)

P1_0 P1_1 接IN1 IN2 当P1_0=0,P1_1=1; 时左上电机反转

P1_0 P1_1 接IN1 IN2 当P1_0=0,P1_1=0; 时左上电机停转

P1_2 P1_3 接IN3 IN4 当P1_2=1,P1_3=0; 时左下电机正转左下电机接驱动板子输出端(蓝色端子OUT3 OUT4)

P1_2 P1_3 接IN3 IN4 当P1_2=0,P1_3=1; 时左下电机反转

P1_2 P1_3 接IN3 IN4 当P1_2=0,P1_3=0; 时左下电机停转

P1_4 P1_5 接IN5 IN6 当P1_4=1,P1_5=0; 时右上电机正转右上电机接驱动板子输出端(蓝色端子OUT5 OUT6)

P1_4 P1_5 接IN5 IN6 当P1_4=0,P1_5=1; 时右上电机反转

P1_4 P1_5 接IN5 IN6 当P1_4=0,P1_5=0; 时右上电机停转

P1_6 P1_7 接IN7 IN8 当P1_6=1,P1_7=0; 时右下电机正转右下电机接驱动板子输出端(蓝色端子OUT7 OUT8)

P1_6 P1_7 接IN7 IN8 当P1_6=0,P1_7=1; 时右下电机反转

P1_6 P1_7 接IN7 IN8 当P1_6=0,P1_7=0; 时右下电机停转

P3_2接四路寻迹模块接口第一路输出信号即中控板上面标记为OUT1

P3_3接四路寻迹模块接口第二路输出信号即中控板上面标记为OUT2

P3_4接四路寻迹模块接口第三路输出信号即中控板上面标记为OUT3

P3_5接四路寻迹模块接口第四路输出信号即中控板上面标记为OUT4

四路寻迹传感器有信号(白线)为0 没有信号(黑线)为1

四路寻迹传感器电源+5V GND 取自于单片机板靠近液晶调节对比度的电源输出接口

关于单片机电源:本店驱动模块内带LDO稳压芯片,当电池输入6V时时候可以输出稳定的5V

分别在针脚标+5 与GND 。这个输出电源可以作为单片机系统的供电电源。

*************************************************************************** */

#include

#define Left_1_led P3_4 //P3_2接四路寻迹模块接口第一路输出信号即中控板上面标记为OUT1

#define Left_2_led P3_5 //P3_3接四路寻迹模块接口第二路输出信号即中控板上面标记为OUT2

#define Right_1_led P3_6 //P3_4接四路寻迹模块接口第三路输出信号即中控板上面标记为OUT3

#define Right_2_led P3_7 //P3_5接四路寻迹模块接口第四路输出信号即中控板上面标记为OUT4

#define Left_moto_go {P1_0=1,P1_1=0,P1_2=1,P1_3=0;} //左边两个电机向前走

#define Left_moto_back {P1_0=0,P1_1=1,P1_2=0,P1_3=1;} //左边两个电机向后转

#define Left_moto_Stop {P1_0=0,P1_1=0,P1_2=0,P1_3=0;} //左边两个电机停转#define Right_moto_go {P1_4=1,P1_5=0,P1_6=1,P1_7=0;} //右边两个电机向前走#define Right_moto_back {P1_4=0,P1_5=1,P1_6=0,P1_7=1;} //右边两个电机向前走#define Right_moto_Stop {P1_4=0,P1_5=0,P1_6=0,P1_7=0;} //右边两个电机停转

sbit led1 =P2^0;

sbit led2 =P2^1;

sbit led3 =P2^2;

sbit led4 =P2^3;

unsigned code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //数码管断码

unsigned code dis[] ={0xfe,0xfd,0xfb,0xf7}; //扫描数码管客值

unsigned char disbuff[5]={0};

unsigned char time=0; //显示缓存unsigned char i =0; //定义扫描数码管字数

unsigned int count1=0; //计左电机码盘脉冲值

unsigned int V=0; //定义其速度

/************************************************************************/

//延时函数

void delay(unsigned int k)

{

unsigned int x,y;

for(x=0;x

for(y=0;y<2000;y++);

}

/************************************************************************/

//显示数码管字程序

void Display_SMG(void)

{

if(++i>=4)i=0;

P0=table[disbuff[i]];

P2=dis[i];

}

/************************************************************************/

///*TIMER0中断服务子函数产生2MS定时扫描数码管与产生0。5S*/

void timer0()interrupt 1 using 2

{

TH0=(65536-2000)/256; //2MS定时

TL0=(65536-2000)%256;

time++;

Display_SMG();

if(time>=250) //250次即是,0。5S

{

time=0;

V=count1*2; //计数公式:轮子直径*3.14/20格码盘=6.5Cm*3.14/20约=1cm 即一个脉冲走1CM距离((count1*1))/0.5S= (count1*2)CM/S

count1=0; //清计数

disbuff[0]=V/1000; //更新显示

disbuff[1]=V%1000/100;

disbuff[2]=V%1000%100/10;

disbuff[3]=V %1000%100%10;

}

}

/***************************************************/

//外部0中断用于计算左轮的脉冲

void intersvr1(void) interrupt 0 using 1

{

count1++;

}

/************************************************************************/ //前速前进

void run(void)

{

Left_moto_go ; //左电机往前走

Right_moto_go ; //右电机往前走

}

//前速后退

void backrun(void)

{

Left_moto_back ; //左电机往前走

Right_moto_back ; //右电机往前走

}

//左转

void leftrun(void)

{

Left_moto_back ; //左电机往前走

Right_moto_go ; //右电机往前走

}

//右转

void rightrun(void)

{

Left_moto_go ; //左电机往前走

Right_moto_back ; //右电机往前走

//停转

void stoprun(void)

{

Left_moto_Stop ; //左电机往前走

Right_moto_Stop ; //右电机往前走

}

/*********************************************************************/ /*--主函数--*/

void main(void)

{

TMOD=0X01;

TH0=(65536-2000)/256; //2MS定时

TL0=(65536-2000)%256;

TR0= 1;

ET0= 1;

EX0=1; //开启外部中断0

IT0=1; //下降沿有效

IE0=0;

EA = 1;

run();

while(1)

{

//有信号为0 没有信号为1

if(Left_2_led==0&&Right_1_led==0)

run();

else

{

if(Right_1_led==1&&Left_2_led==0) //右边检测到黑线

{

Left_moto_go; //左边两个电机正转

Right_moto_back; //右边两个电机反转

}

if(Left_2_led==1&&Right_1_led==0) //左边检测到黑线

{

Right_moto_go; //右边两个电机正转

Left_moto_back; //左边两个电机反式开始转

}

}

}

}

智能型温度测量控制系统

河北农业大学 毕业论文﹙设计﹚开题报告 题目智能型温度测量控制系统-开题报告 学生姓名学号 所在院(系)信息工程学院 专业班级通信工程2010140 指导教师 2014年02月23日

题目基于单片机的温度控制系统设计 一、选题的目的及研究意义 温度的测量及控制对保证产品质量、提高生产效率、节约能源、生产安全、促进国民经济的发展起到非常重要的作用,是工业对象中主要的被控参数之一。在单片机温度测量系统中的关键是测量温度、控制温度和保持温度。在日常生活中,也可广泛实用于地热、空调器、电加热器等各种家庭室温测量及工业设备温度测量场合。随着微机测量和控制技术的迅速发展与广泛应用,以单片机为核心的温度采集与控制系统的研发与应用在很大程度上提高了生产生活中对温度的控制水平。近年来,温度的检测在理论上发展比较成熟,但在实际测量和控制中,如何保证快速实时地对温度进行采样,确保数据的正确传输,并能对所测温度场进行较精确的控制,仍然是目前需要解决的问题。这次毕业设计选题的目的主要是让生活在信息时代的我们,将所学知识应用于生产生活当中,掌握系统总体设计的流程,方案的论证,选择,实施与完善。通过对温度控制通信系统的设计、制作、了解信息采集测试、控制的全过程,提高在电子工程设计和实际操作方面的综合能力,初步培养在完成工程项目中所应具备的基本素质和要求。培养研发能力,通过对电子电路的设计,初步掌握在给定条件和要求的情况下,如何达到以最经济实用的方法、巧妙合理地去设计工程系统中的某一部分电路,并将其连接到系统中去。提高查阅资料、语言表达能力和理论联系实际的技能。 当今社会温度的测量与控制系统在生产与生活的各个领域中扮着越来越重要的角色,大到工业冶炼,物质分离,环境检测,电力机房,冷冻库,粮仓,医疗卫生等方面,小到家庭冰箱,空调,电饭煲,太阳能热水器等方面都得到了广泛的应用,温度控制系统的广泛应用也使得这方面研究意义非常的重要。 二、综述与本课题相关领域的研究现状、发展趋势、研究方法及应用领域等 国外对温度控制技术研究较早,始于20世纪70年代。先是采用模拟式的组合仪表,采集现场信息并进行指示、记录和控制。80年代末出现了分布式控制系统。目前正开发和研制计算机数据采集控制系统的多因子综合控制系统。现在世界各国的温度测控技术发展很快,一些国家在实现自动化的基础上正向着完全自动化、无人化的方向发展。我国对于温度测控技术的研究较晚,始于20世纪80年代。我国工程技术人员在吸收发达国家温度测控技术的基础上,才掌握了温度室内微机控制技术,该技术仅限于对温度的单项环境因子的控制。我国温度测控设施计算机应用,在总体上正从消化吸收、简单应用阶段向实用化、综合性应用阶段过渡和发展。在技术上,以单片机控制的单参数单回路系统居多,尚无真正意义上的多参数综合控制系统,与发达国家相比,存在较大差距。我国温度测量控制现状还远远没有达到工厂化的程度,生产实际中仍然有许多问题困扰着我们,存在着装备配套能力差,产业化程度低,环境控制水平落后,软硬件资源不能共享和可靠性差等缺点。在今后的温控系统的研究中会趋于智能化,集成化,系统的各项性能指标更准确,更加稳定可靠。应用领域非常的广泛,①冷冻库,粮仓,储罐,电信机房,电力机房,电缆线槽等测温和控制领域。 ②轴瓦,缸体,纺机,空调等狭小空间工业设备测温和控制。③汽车空调,冰箱,冷柜以及中低温干燥箱等。④太阳能供热,制冷管道热量计量,中央空调分户热能计量等。温度是一种最基本的环

汽车车灯智能控制系统毕业设计

本科生毕业设计(论文) 学院:____________________ 专业:____________________ 学生:_____________________ 指导教师:_____________________ 完成日期年月

汽车车灯智能控制系统设计 Design of Intelligent Control System for Automobile Lamp 总计:24页 表格:1个 插图:18幅

汽车车灯智能控制系统设计 Design of Intelligent Control System for Automobile Lamp 学院:_______________________________ 专业:_______________________________ 学生姓名:_______________________________ 学号:_______________________________ 指导教师(职称):________________________ 评阅教师: 完成日期:

汽车车灯智能控制系统设计 电气工程及其自动化专业 [摘要]本系统是基于单片机控制的汽车车灯智能系统,模拟并显示出汽车驾驶过程的灯光控制。其中主要包括汽车的远近光灯的模拟显示。具体是通过单片机板上的超声波测距模块和光线感应模块来控制LED灯的亮灭显示状态。在本设计过程中,通过使用单片机来控制车灯的状态,并把模拟信息在LCD上显示出来,以此加强了对单片机的了解和使用。 [关键词]单片机;电路基础;汽车车灯控制系统;LED灯 Design of Intelligent Control System for Automobile Lamp Electrical Engineering and Automation Specialty LI Lin-jie Abstract: This system is the intelligent automobile lamp based on MCU control system simulation and to show the car driving lights control. Including the car made a left turn as far as light, brake and alarm switch, analog display. Is controlled by switching actions of the MCU Board LED lights shows a left turn, right turn, brake and other corresponding State. During the design process, through the use of Protel drawing schematics, makes the circuit more intuitive and deepened understanding of Protel application. Key words: Microcontroller; circuit theory; automobile lamp control system; LED lights

外网远程控制WIFI智能小车机器人

本期教程专门介绍如何让我们的机器人与互联网相连,实现远程安防监控与控制!然后可以在全球范围内控制它。本教程使用的路由器为WR703N,DB120的路由外网控制设置。 一、基本原理 外网控制的基本原理就是“端口映射”+“动态域名”。什么叫端口映射呢?简单地说,就是在你家里的无线路由器上做一个设置,使得外网对于路由器上一个特定的端口的访问会被路由器重新转到一个指定的IP主机和端口,这样一来,家里的无线路由器就等于是一个“桥”,联通了外网和小车机器人上面的路由,使得我们可以在外网控制家里的机器人。 那么“动态域名”又是什么呢?大家可以想想:我们家里的路由器每次开机后,对外的IP 地址都是不同的,那么控制小车就需要每次通过查询路由对外的IP地址,然后重新设置控制端的IP,这是个很麻烦的事。“动态域名”就可以完美地解决这个问题,你先向动态域名提供商申请一个动态域名,这个域名是不变的,比如:https://www.sodocs.net/doc/7e14531296.html,,提供商会给你一个账号密码,把这个账号密码填入路由的动态域名功能里面,每次开机的时候,路由就会向域名提供商的服务器登录,服务器就可以获取本次登录时,路由对外网的地址,然后自动帮你把这个新IP绑定在https://www.sodocs.net/doc/7e14531296.html,这个域名上面,这样一来,我们就没必要每次都去找路由当前的IP了,直接输这个域名就可以连到我们的路由。 我们今天要做的也就是利用上面的原理完成外网到家里的无线路由器,再到机器人上面 的WIFI板这一过程。 二、外网映射设置 1、家庭路由器设置。 首先需要一个家用的路由器,可以上外网的,这个路由器就是作为沟通小车与外界的桥梁。在这里,我选用了我的TP-Link WR641G+路由器。 第一步:设置转发规则 如下图所示,登陆家庭路由器的192.168.1.1管理界面,找到转发规则——》虚拟服 务器 在这里,因为我们的WIFI机器人运行需要开两个端口,端口8080为视频端口,端口2001为控制端口,所以我们添加两个端口转发规则,这边我使用192.168.1.108作为转发的目标客户端,这就是我们的WIFI板IP地址。这个IP可以自己定的,但是必须为固定的。并 且在家庭路由器的DHCP范围内。 通过这个设置,来自外网的对8080端口和2001端口的访问将重新发送到 192.168.1.108这个IP的客户端上,也就是我们的WIFI板。

智能汽车温度控制系统

Techniques of Automation & Applications | 107 智能汽车温度控制系统 赵 宇 (黑龙江省直属机关老干部活动中心,黑龙江 哈尔滨 150091) 摘 要:采用单片机对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标。文 章通过国产某型轿车的空调系统,介绍了汽车内智能温控系统的相关软、硬件设计。 关键词:汽车温度;智能温度控制;89C52单片机 中图分类号:TP29 文献标识码:B 文章编号:1003-7241(2009)05-0107-03 Air Conditioning T emperature Control of a Car ZHAO Yu ( The V eteran Cadre Center of the Heilongjiang Province, Harbin 150091 China ) Abstract: This paper introduces the application of AT89C52 microcomputer in the car’s air conditioning system of the Red Flag automobile. The hardware and software of the system are outlined. Key word: car’s sair conditioning; 89C52 microcomputer; temperature control 收稿日期:2009-02-18 1 引言 随着现代控制技术的发展,在工业控制领域需要对现场数据进行实时采集,在一些重要场合对数据采集的要求更高,例如在电厂、钢铁厂、化工领域的生产中都需要对大量数据进行现场采集,而温度采集又是其中极为重要的部分,所以,需要一种高精度、低成本的温度采集与控制系统。其中以单片机为核心对温度的控制问题是目前工业生产中经常遇到的控制问题。因此,对单片机温度智能控制系统的设计和应用进行探讨具有十分重要的理论价值和实践意义。而汽车内实现智能温度控制对于具有较好的舒适性和节能性以及方便驾驶员操作等优点将会越来越受到人们喜爱。本文通过国产某型轿车的空调系统,介绍了汽车内智能温控系统的相关软、硬件设计。 2 汽车智能温控系统的硬件设计 汽车智能温控系统是一种用于实现车厢气温自动调节的装置,能够使车厢温度快速准确地达到乘客期望的舒适性要求。智能温控系统的总体框图如图1所示。由图1可知,智能温控系统主要由单片机、温度信号采集电路、人机接口电路、串行存储及系统监控电路、混合风门步进电机驱动电路和串行通信接口电路等几部分组成。 2.1 单片机的选择 汽车智能温度控制系统是通过采用单片机控制,使车内温度能够在设定值及变化范围内变化。采用单片机来实现温度控制不仅具有控制方便、简单、灵活等优点,而且可以大幅度提高被控温度的技术指标[1]。本系统选用ATMEL公司的AT89系列单片机中的AT89C52,AT89C52单片机是一种新型的低功耗、高性能且内含8K字节闪电存储器(Flash Memory)的8位CMOS微控制器,与工业标准MCS-51指令系列和引脚完全兼容,有超强的加密功能,其片内闪电存储器的编程与擦除完全用电实现,数据不易挥发,编程/擦除速度快[2]。 2.1.1 单片机内部基本结构 89C52单片机的内部基本结构包含下列功能部件:(1) 一个8位的微处理器CPU。 图1 汽车温控系统的总体结构

汽车智能照明控制系统设计

毕业设计(论文) 汽车智能照明控制系统 学生姓名: 学号: 所在系部: 专业班级: 指导教师: 日期:二〇一七年五月

学位论文原创性声明 本人郑重声明:所呈交的学位论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。本人完全意识到本声明的法律后果由本人承担。 作者签名:年月日 学位论文版权使用授权书 本学位论文作者完全了解学院有关保管、使用学位论文的规定,同意学院保留并向有关学位论文管理部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。 本人授权省级优秀学士学位论文评选机构将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 本学位论文属于 1、保密□,在年解密后适用本授权书。 2、不保密□。 (请在以上相应方框内打“√”) 作者签名:年月日 导师签名:年月日

摘要 在当今社会,人们生活得到了极大的提高,汽车拥有量也在不断增加。汽车作为快捷方便的交通工具,给我们的生活带来了诸多方便,同时也带来不少的交通安全问题。汽车照明系统作为现代汽车的必备安全系统之一,在安全性方面有很多值得改进的地方。大部分的汽车的照明系统目前还是以传统手动操作为主,因此,实现汽车照明的智能控制是非常有必要的。 本文首先对汽车智能照明控制系统的研究背景和国内外概况作了简要介绍,给出了设计任务要求和总体设计方案,并根据实际情况做了硬件设计。硬件设计部分包括主控部分、电源设计部分、数据采集部分和模拟车灯控制部分。本设计是通过STM32单片机对传感器采集到的数据进行分析后对模拟车灯进行控制,控制的具体步骤通过软件编程实现。本文还对实物模型的制作流程作了简单介绍,并给出了实物图。最后对现阶段的研究进行总结并得出了结论,最终结论表明该系统在实际应用中是可行的。 关键词:汽车车灯;STM32F103C8T6;传感器

智能小车舵机控制精编版

智能小车舵机控制精编 版 MQS system office room 【MQS16H-TTMS2A-MQSS8Q8-MQSH16898】

1 //只利用一个定时器 T0,定时时间为,定义一个角度标识,数值为 1、2、3、4、5, //实现、1ms、、2ms、高电平的输出,再定义一个变量,数值最大为 40,实现周期为 20ms。 //每次进入定时中断,判断此时的角度标识,进行 //相应的操作。比如此时为 5,则进入的前 5 次中断期间,信号输出为高电平,即为的 //高电平。剩下的 35 次中断期间,信号输出为低电平,即为的低电平。这样总的时间 //是 20ms,为一个周期。 //用51板上s1和s2按键 //用P1^7输出 PWM信号控制舵机 #include "" unsigned char count; //次数标识 sbit pwm =P1^7 ; //PWM信号输出 sbit jia =P3^0; //角度增加按键检测IO口 sbit jan =P3^1; //角度减少按键检测IO口 sbit jianwei=P3^4; //按键位 unsigned char jd; //角度标识 sbit dula=P2^6; sbit wela=P2^7; unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e void delay(unsigned char i)//延时 { unsigned char j,k; for(j=i;j>0;j--) for(k=125;k>0;k--); } void Time0_Init() //定时器初始化 { TMOD = 0x01; //定时器0工作在方式1 IE= 0x82; TH0= 0xfe; TL0= 0x33; //晶振, TR0=1; //定时器开始 } void Time0_Int() interrupt 1 //中断程序 { TH0 = 0xfe; //重新赋值 TL0 = 0x33; if(count

智能wifi小车源程序

由于今年组委会光电管和摄像头分开比赛。所以传感器部分我们选择了光电管,比赛以小车的速度记成绩,为了让小车更快更稳得跑完全程,传感器的探测距离必须要远,既要有大的前瞻,普通的红外对管由于功率较小,探测距离增大时,干扰严重,所以我们自制了大功率对管,同时采用了程序控制脉冲发光的办法,有效的降低了发热,提高了系统的稳定性。 系统采用采用了7.2V 2000mAh Ni-Cd蓄电池作为系统能源,并且通过稳压电路分出6伏,5伏已分别给舵机和单片机供电。 直流电机驱动模块接收速度控制信号控制驱动电机运行,达到控制车速目的。转向伺服模块控制舵机转向,进而控制智能车转弯。速度测量模块实时测量智能车车速,用于系统的车速闭环控制,以精确控制车速。 系统充分使用了MC9S12DG128单片机的外围模块,具体使用到的模块包括:ADC模拟数字转换模块、定时器模块、PWM脉冲宽度调制模块、中断模块、I/O 端口和实时时钟模块等。 系统调试过程中,使用了组委会提供的代码调试环境CodeWarrior IDE,同时使用了清华的软件进行了仿真试验。 图1.1 系统结构框图 3.1舵机部分 为了使转弯更加灵活,对舵机相关部分作了部分改动。首先,我们将舵机力臂加长85mm。这样,对于同样的转弯角度值,只需更小的舵机转角,减小了舵机转弯时惯性带来的弊端。其次,我们将舵机反装,使舵机连杆水平,因为此时舵机提供的力全部用在转弯上。 3.2前轮部分 为了增加前轮转弯时的稳定性,对前轮相关部分进行了部分改动。首先,更改前后垫片

的数量,使前轮主销后倾,这样,车轮具有更好的自动回正功能。其次,更改连杆的长度,使车轮外倾,车轮转弯时,前半部分重心上移,促使赛车转弯更加稳定。再次,我们通过更改舵机连杆的长度,增加前轮前束,同样增加了前轮的稳定性。 3.3底盘部分 为了提高赛车运行时的稳定性,对地盘相关部分作了部分改动。首先,前轮相关位置加垫片,降低了前轮重心。其次,更改后轮车轴处的调节块,使后轮重心升高,这样,车身前倾,一定程度上,增加了车的稳定性。 3.4后轮部分 首先,更换后轮轮距调节块,使后轮两轮之间间距加大。这样,车在转弯时不容易产生侧滑。其次,调节后轮差速,使赛车转弯更加灵活。 4.1电源部分 为了能使智能车系统能正常工作,就需要对电池电压调节。其中,单片机系统、车速传感器电路需要5V 电压,路径识别的光电传感器和接收器电路电压工作为5V 、伺服电机工作电压范围4.8V 到6V(或直接由电池提供),直流电机可以使用7.2V 2000mAh Ni-cd 蓄电池直接供电。考虑到由于驱动电机引起的电压瞬间下降的现象,因此采用低压降的三端稳压器成为必然。我们在采用lm7805,和lm7806作为稳牙芯片。经试验电压纹波小,完全可以满足要求。 电池(7.2v ) 2000mAh Ni-cd 稳压电路 电机 图4.1系统电压调节图 5V 对管 单片机 舵机 测速板 6V 7.2V

5.智能小车-按键控制小车的启动

实验五:树莓派平台-------按键控制小车启动实验 1、实验前准备 图1-1 树莓派主控板 图1-2 按键开关 2、实验目的 ssh服务登录树莓派系统之后,编译运行按键控制小车启动实验后,按下KEY 启动小车,小车会自动先前进1s,后退1s,左转2s,右转2s,原地左转3s,原地右转3s,接着停止0.5s。 3、实验原理

按键消抖:通常我们的按键开关一般都是机械弹性开关,当机械触点断开,闭合时,由于机械触点的弹性作用,一个按键开关子在闭合时不会马上就能稳定的接通,在断开时也不会一下子彻底断开,而是在闭合和断开时会伴随着一连串的抖动。 图3-1 按键抖动状态图 抖动时间一般都是由按键的机械特性决定的,一般都会在10ms以内,为了确保程序对按键的一次闭合后一次断开只响应一次,必须进行按键的消抖处理,有硬件消抖和软件消抖。 其中,软件消抖指的是检测出键闭合后执行一个延时程序,产生5ms~10ms 的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键的处理程序。 硬件消抖是在开关两段接一个0.1uf的电容。本次实验我们采取的是软件延时去抖。 4、实验步骤 4-1.看懂原理图

图4-1 树莓派主控板电路图 图4-2 按键

图4-3 树莓派40pin引脚对照表 4-2 由电路原理图可知按键是直接连接到主控板上的wiringPi编码的10口。我们设置10口为输入模式,并当按下按键时通过检测该引脚的电平状态,来判断按键是否被按下。 4-3 程序代码如下:

温度控制系统研究背景与现状

温度控制系统研究背景与现状 1 研究背景 (1) 2 国内外现状 (1) 定值开关温度控制法 (1) PID线性温度控制法 (2) 智能温度控制法 (3) 国内外实例 (4) 1 研究背景 温度是生活及生产中最基本的物理量,它表征的是物体的冷热程度。自然界中任何物理、化学过程都紧密地与温度相联系。在很多生产过程中,温度的测量和控制都直接和安全生产、提高生产效率、保证产品质量、节约能源等重大技术经济指标相联系。自18世纪工业革命以来,工业过程离不开温度控制。温度控制广泛应用于社会生活的各个领域,如家电、汽车、材料、电力电子等。温度控制的精度以及不同控制对象的控制方法选择都起着至关重要的作用,温度是锅炉生产质量的重要指标之一,也是保证锅炉设备安全的重要参数。同时,温度是影响锅炉传热过程和设备效率的主要因素。基于此,运用反馈控制理论对锅炉进行温度控制,满足了工业生产的需求,提高了生产力。 2 国内外现状 温度控制技术按照控制目标的不同可分为两类:动态温度跟踪与恒值温度控制。动态温度跟踪实现的控制目标是使被控对象的温度值按预先设定好的曲线进行变化。在工业生产中很多场合需要实现这一控制目标,如在发酵过程控制,化工生产中的化学反应温度控制,冶金工厂中燃烧炉中的温度控制等。恒值温度控制的目的是使被控对象的温度恒定在某一数值上,且要求其波动幅度(即稳态误差)不能超过某一给定值。从工业温度控制器的发展过程来看,温度控制技术大致可分以下几种: 定值开关温度控制法 所谓定值开关控温法,就是通过硬件电路或软件计算判别当前温度值与设定目标温度值之间的关系,进而对系统加热源(或冷却装置)进行通断控制。若当前温度值比设定温度值高,则关断加热器,或者开动制冷装置;若当前温度值比设定温度值低,则开启加热器并同时关断制冷器。这种开关控温方法比较简单,在没有计算机参与的情况下,用很简单的模拟电路就能够实现。目前,采用这种控制方法的温度控制器在我国许多工厂的老式工业电炉中仍被使用。由于这种控制方式是当系统温度上升至设定点时关断电源,当系统温度下降至设定点时开通

智能小车控制程序1

/*实现前进与后退功能*/ /*控制智能车向前行驶10秒,然后停3秒,再向后行驶6秒,停止*/ /********************************************************/ #include #define uint unsigned int /*进行端口声明时,应与具体硬件连接相对应,如不相互对应,将影响程序功能的正常实现*/ sbit S1=P1^3; //对电机端口声明 sbit S2=P1^4; sbit S3=P1^5; sbit S4=P1^6; /*功能函数定义*/ void delay(uint del) //延时函数,延时del毫秒 { uint i,j; for(i=0; i

{ go(); //前进 delay(10000); //前进10秒 stop(); //停止 delay(3000); //停3秒 back(); //后退 delay(6000); //后退6秒 stop(); //停止 }

基于Arduino单片机控制的WiFi智能小车

呼伦贝尔学院 计算机科学与技术学院 本科生毕业论文(设计) 题目:基于Arduino控制的 WIFI智能小车 学生姓名:苑伟 学号: 专业班级:2011级计算机科学与技术一班 指导教师:陶锐 完成时间: 2015年5月22日

目录

摘要 本次设计wifi智能小车主要采用Arduino作为底层硬件控制核心,接收来自路由器的指令执行相关操作;采用PWM脉冲调节小车速度、舵机控制以及灯光亮度;采用定时器实现小车数据的发送、小车的避障及计算小车的行驶速度;运用简单的PID算法实现轮胎直接的差速控制;采用路由器发射无线wifi,使用Lua脚本实现了接收单片机数据及发送操作指令,设计了web页面控制小车的B/S模式结构。 关键字:Arduino;PWM脉冲;PID算法;web控制

Abstract The design of wi-fi smart cars mainly adopts the Arduino as the control core to receive instructions from the router perform related operations; Using PWM pulse to adjust the vehicle speed, steering gear control and lighting brightness; using timer to realise the transmission of car data ,the breakdown of the car and calculate the car speeds; Using the simple PID algorithm tyre direct differential control; Using wireless wifi router launch, using the Lua script implements receiving MCU data and send operation instructions,and at last, it designs a web page to control the car B/S mode structure. Keyword: Arduino; PWM Pulse; PID arithmetic; Web manage

智能小车原理

一、前言 设计背景: 在科学探索和紧急抢险中经常会遇到对与一些危险或人类不能直接到达的地域的探测,这些就需要用机器人来完成。而在机器人在复杂地形中行进时自动避障是一项必不可少也是最基本的功能。因此,自动避障系统的研发就应运而生。我们的自动避障小车就是基于这一系统开发而成的。意义随着科技的发展,对于未知空间和人类所不能直接到达的地域的探索逐步成为热门,这就使机器人的自动避障有了重大的意义。我们的自动避障小车就是自动避障机器人中的一类。自动避障小车可以作为地域探索机器人和紧急抢险机器人的运动系统,让机器人在行进中自动避过障碍物。成员情况本组三位成员均为2005级基地班学生,都选修过数字电路课程。二、总体方案设计 1、设计要求 小车从无障碍地区启动前进,感应前进路线上的障碍物后,根据障碍物的位置选择下一步行进方向。并可通过两个独立按键对小车进行控速。 2、小车自动避障的原理 小车车头处装有三个光电开关,中间一个光电开关对向正前方,两侧的光电开关向两边各分开30度,(如右图所示)。小车在行进过程中由光电开关向前方发射出红外线,当红外线遇到障碍物时发生漫反射,反射光被光电开关接收。小车根据三个光电开关接受信号的情况来判断前方障碍物的分布并做出相应的动作。光电开关的平均探测距离为30cm。 3、模块方案比较及论证 根据设计要求,我们的自动避障小车主要由六个模块构成:车体框架、电源

及稳压模块、主控模块、逻辑模块、探测模块、电机驱动模块组成。各模块分述如下: 3.1车体框架 在设计车体框架时,我们有两套起始方案,自己制作和直接购买玩具电动车。方案一:自己设计制作车架自己制作小车底盘,用两个直流减速电机作为主动轮,利用两电机的转速差完成直行、左转、右转、左后转、右后转、倒车等动作。减速电机扭矩大,转速较慢,易于控制和调速,符合避障小车的要求。而且自己制作小车框架,可以根据电路板及传感器安装需求设计空间,使得车体美观紧凑。但自己制作小车设计制作周期较长,且费用较高,因而我们放弃这一方案。方案二:购买玩具电动车 玩具电动车价格低廉,有完整的驱动、传动和控制单元,其中传动装置是我们所需的,缩短了开发周期。但玩具电动车采用普通直流电机驱动,带负载能力差,调速方面对程序要求较高。同时,玩具电动车转向 依靠前轮电机带动前轮转向完成,精度低。 考虑到利用玩具电动小车做车架开发周期短,可留够充分的时间用于系统调试,且硬件上的不足我们有信心用优良的算法来弥补,故我们选择方案二。

【精品】温度控制系统智能控制器的与仿真

毕业设计[论文] 题目:温度控制系统智能控制器的 设计与仿真 2013年5月12日

目录 摘要 (1) Abstract (1) 第一章绪论 (2) 1。1选题背景及其意义 (2) 1。2概述 (2) 1。3温度测控技术的发展与现状 (2) 1。3。1定值开关控温法....................... 错误!未指定书签。 1。3.2PID线性控温法 (3) 1.3。3智能温度控制法 (3) 第二章被控对象及控制策略........................... 错误!未指定书签。 2.1被控对象 .................................... 错误!未指定书签。 2。2控制策略 (4) 第三章PID控制器的设计与仿真 (5)

3.1PID 控制器的模型与设计 (5) 3。2P 、I 、D 控制 (6) 3。2.1比例(P )控制 (6) 3.2.2积分(I)控制 (6) 3.2。3微分(D )控制 (6) 3。3PID 控制器部分Simulink 的模块 (6) 3.4PID 控制器参数的整定 (7) 3。5临界比例度法仿真的步骤 (7) 3.5.1控制对象)(1S G 的参数Kp ,Ti ,Td 的整定 .................. 9 3。5.2控制对象)(2S G 的参数Kp ,Ti ,Td 的整定 . (10) 3.5。3控制对象)(3S G 的参数Kp ,Ti ,Td 的整定 (11) 3.6对PID 控制器的仿真 (11) 3。6。1模型一的仿真 (11)

3.6。2模型二的仿真 (13)

智能小车控制系统设计

智能小车控制系统设计 ——ARM控制模块设计 EasyARM615是一款基于32位ARM处理器,集学习和研发于一体的入门级开发套件,该套件采用Luminary Micro(流明诺瑞)公司生产的Stellaris系列微控制器LM3S615。本系统设计是以EasyARM615开发板为核心,通过灰度传感器检测路面上的黑线,运用PWM直流电机调速技术,完成对小车运动轨迹等一系列的控制。同时利用外扩的液晶显示器显示出各个参数。以达到一个简易的智能小车。 本文叙述了系统的设计原理及方法,讨论了ISR集成开发环境的使用,系统调试过程中出现的问题及解决方法。 据观察,普通的玩具小车一般需要在外加条件下才能按照自己的的设想轨迹去行驶,而目前可借助嵌入式技术让小车无需外加条件便可完成智能化。在小车行驶之前所需作的准备工作是在地面上布好黑线轨迹,设计好的小车便可按此黑线行驶,即为智能小车。其设计流程如下: 1、电机模块 采用由达林顿管组成的H型PWM电路。PWM电路由四个大功率晶体管组成,H桥电路构成,四个晶体管分为两组,交替导通和截止,用单片机控制达林顿管使之工作在开关状态,根据调整输入控制脉冲的占空比,精确调整电机转速。这种电路由于管子工作只在饱和和截止状态下,效率非常没。H型电路使实现转速和方向的控制简单化,且电子开关的速度很快,稳定性也极强,是一种广泛采用的PWM调整技术。 具体电路如下图所示。本电路采用的是基于PWM原理的H型驱动电路。该电路采用TIP132大功率达林顿管,以保证电动机启动瞬间的8安培电流要求。

2、传感器模块 灰度测量模块,是一种能够区分出不同颜色的的电子部件。灰度测量模块是专为机器人设计的灰度传感器。例如:沿着黑色轨迹线行走,不偏离黑色轨迹线;沿着桌面边沿行走,不掉到地上,等等。足球比赛时,识别场地中灰度不同的地面,以便于进行定位。不同的物体对红外线的反射率不同,黑色最低,白色最高;它通过发射红外线并测量红外线被反射的强度来输出反映物体颜色的电压信号,有效距离3-30毫米。 其技术规格如下: 已知灰度传感器的输出电压为0-3.3V,所以可通过ARM615开发板上的ADC 模块转换成数字信号,最后通过不断测试得出黑线与白线的大概参数值,完成对小车传感器部分的设计。 在本次设计中选择二个灰度传感器,其实现效果与布局如下所示。

智能车控制算法

智能车转角与速度控制算法 1.检测黑线中点Center:设黑、白点两个计数数组black、white,从第一个白点开始,检测到一个白点,白点计数器就加1,检测到第一个黑点,黑点计数器就加1,并且白点计数器停止,以此类推扫描每一行;黑线中点=白点个数+(黑点的个数/2) 2.判断弯直道: 找出黑线的平均位置avg (以每10行或者20…作为参照,行数待定) 算出相对位移之和(每一行黑线中点与黑线平均位置距离的绝对值之和) 然后用Curve的大小来确定是否弯直道(Curve的阀值待定)。 3.控制速度: 根据弯度的大小控制速度大小。 //*****************************弯度检测函数*******************************// Curvecontrol () { int black[N]; //黑点计数器 int white[N]; //白点计数器 int center[N]; //黑线中点位置 int avg; //黑线中点平均位置 int curve;//N行的相对位移之和 if(白点) ++white[N]; //判断黑白点的个数 else ++black[N]; center[N]=white[N]+black[N]/2; //每一行的黑线中点avg=(center[1]+center[2]+...+center[N])/N; //求出黑线中点的平均位置 curve=(|avg-center[1]|+|avg-center[2]|+...+|avg-center[N]|)/N //求出N行的相对位移之和 return curve; //返回弯度大小

智能小车控制基本原理

【机器人创意工作室教程一】WIFI智能小车机器人基本原理 [复制链接] liuv ikin g 管 理 员 做 中 国 人 自 己 的 W I F I 机 器 人 ! 贡献 2 4 9 电梯直达 楼主 发表于 2012-5-13 11:58:55 |只看该作者|倒序浏览 分享到:11 WIFI智能小车机器人是很多人童年时的梦想,就好比当年看着《小鬼当家》里面的那个视频遥控车一样,看着就激动! 然而对于大部分初学者而言,本身并非电子专业,也不是计算机专业,可是却对WIFI/蓝牙控制的智 能小车机器人情有独钟,怎么办呢?对于一个专业不对的人来说,确实是隔行如隔山,但是没有关系,从今天起,WIFI机器人网·机器人创意工作室不间断地推出一系列教程,手把手教你如何DIY一个属 于自己的智能小车机器人。 鉴于蓝牙智能车和WIFI智能车其实很类似的,只是把WIFI模块换成了蓝牙模块,所以蓝牙车就不再 详细阐述了,弄明白了WIFI车,蓝牙车也一样的。 OK,进入正题,机器人创意工作室教程第一讲《WIFI智能小车机器人基本原理》 我们的这款WIFI智能小车机器人采用的路由器+PC或者手机、网页控制方式。其基本原理分为4大块: 1、把普通的无线路由器通过刷入开源的Openwrt系统,使之成为一个运行了Linux系统的小电脑,何 为Openwrt? 请看: 什么是OpenWRT? 1. 关于 OpenWrt 当Linksys 释放 WRT54G/GS 的源码后,网上出现了很多 不同版本的 Firmware 去增强原有的功能。大多数的 Firmware 都是99%使用 Linksys的源码,只有 1%是加上去的,每一种 Firmware 都是针对特定的市场而设计,这样做有2个缺点,第一个是难以集 合各版本Firmware的长处,第二个是这版本距离 Linux 正式发行版越来越远。OpenWrt 选择了另一 条路,它从零开始,一点一点的把各软件加入去,使其接近 Linksys 版 Firmware的功能,而OpenWrt 的成功之处是它的文件系统是可写的,开发者无需在每一次修改后重新编译,令它更像一个小型的 Linux 电脑系统,也加快了开发速度。 以上解释摘自百度百科。简而言之,就是从思科的路由源码改造过来的,一个适用于某些特定芯片的 路由器的小型Linux系统,有了这个系统,我们的路由就不再是上网那么简单了,我们可以在上面安 装各种程序、驱动,以路由为平台,用户可以自由地加载USB摄像头、网卡、声卡、等等设备。 我们的WIFI板上运行着一款程序,叫做mjpg-streamer,这个程序可以把USB摄像头的视频进行编码,然后通过WIFI返回给上位机,这样,我们就可以看到来自机器人的视频了。 同时路由一般都预留有TTL串口,TTL串口是用来调试或者刷机用的,我们把这个TTL串口引出来, 然后通过安装在路由里面的Ser2net软件,就能把来自WIFI信道的指令转到串口输出,而串口在这里 的作用就是与单片机芯片MCU通信,让单片机知道用户要让他做什么动作。关于TTL的介绍,请看后 文。 WIFI(路由)模块:

WIFI智能小车机器人

WIFI智能小车机器人 作者:福建师范大学协和学院陈洋斌叶志燕沈渊 指导教师:钟伟雄林民庆 作品简介 在平常的生活中,我们经常会见到有人在玩遥控车,甚至现在还有了遥控飞机。这一切在过去那些年都还只是人们眼中孩子们的玩具而已,然而随着科技的发展,关于机器人的电影,或者是现实生活中科学研究者研发出来的仿生机器人经常在各种媒体中不断的报导。这毫无疑问,再过个几十年,机器人将走进我们的家庭中,它将为我们带来更多的便利。如今,很多电子发烧友DIY出了各种版本WIFI机器人。Wifi Robot,顾名思义就是通过wifi无线网控制的机器人,比起普通的遥控车,它的好处就是遥控信号覆盖范围可以做到很广。 WIFI智能小车机器人是一种基于WIFI的无线远程智能遥控机器人,利用非常成熟的WIFI无线网络为数据载体,实现控制数据,视频数据传送而达到控制小车和视频监控等等功能。它是集无线通信、实时电机驱动、多向机械云台、视频监控、环境温度检测、为一体的多功能智能遥控车。本系统在电脑端上位机采用QT编程,由于QT面向多平台,并且可移植性好。通过QT编写的上位机,便可以把控制数据通过Socket发送到路由器,路由器再通过ser2net把数据包解开,然后转发到路由器的串口; 该系统的控制端采用STC15单片机作为微处理器,通过STC15单片机与路由器建立串口通信,便能利用路由器的串口数据进行控制电机的工作状态模式和三个陀机的工作角度。STC15单片机还负责实时监控环境温度并经过路由器反馈至电脑,让使用者可以实时了解小车所在地的气温,以便于在到达目的地之前设定好空调温度等应用。

平台选型说明 本设计使用本届大赛指定的单片机开发板(以STC15F2K61S2芯片为控制核心) 设计说明 1、设计要求 1.找一台能刷Linux的无线路由器,将其操作系统刷成OpenWrt。

智能温度控制系统课程设计

学号:XX 2010 - 2011学年第1 学期 专业综合设计报告 题目:智能温度控制系统 专业:通信工程 班级:07通信工程 姓名:V5领袖 指导教师:王忠良 成绩: 电气工程系 2010年10月23日

课程设计任务书 学生班级:07通信工程学生姓名:张跃学号:0709131065 设计名称:智能温度控制系统 起止日期:2010.10.17-2010.10.23指导教师:王忠良

题目:温度控制系统 摘要: 本设计以AT89S51单片机为核心的温度控制系统的工作原理和设计方法。温度信号由温度芯片DS18B20采集,并以数字信号的方式传送给单片机。文中介绍了该控制系统的硬件部分,包括:温度检测电路、温度控制电路、PC机与单片机串口通讯电路和一些接口电路。单片机通过对信号进行相应处理,从而实现温度控制的目的。文中还着重介绍了软件设计部分,在这里采用模块化结构,主要模块有:数码管显示程序、键盘扫描及按键处理程序、温度信号处理程序、继电器控制程序、超温报警程序。

目录 1引言--------------------------------------------------------------------------------------------1 2 工作原理--------------------------------------------------------------------------------------1 3 方案设计与论证-----------------------------------------------------------------------------2 3.1 主控制部分---------------------------------------------------------------------------------2 3.2 测量部分--------------------------------------------------------------------------------------3 4 各单元的设计---------------------------------------------------------------------------------8 4.1 键盘单元---------------------------------------------------------------------------------------8 4.2 温度控制及超温和超温警报单元-------------------------------------------------------10 4.3 温度控制器件电路-------------------------------------------------11 4.4 温度测试单元-------------------------------------------------------------------------------11 4.5七段数码管显示单元-----------------------------------------------11 4.6 接口通讯单元-----------------------------------------------------13 5 电源输入单元-----------------------------------------------------15 6 程序设计---------------------------------------------------------16 6.1 概述------------------------------------------------------------16 6.2 程序结构分析-----------------------------------------------------17 7. 测设分析---------------------------------------------------------18 结论------------------------------------------------------------------------------------------------19参考文献-------------------------------------------------------------------------------------------20附录使用说明-----------------------------------------------------------------------------------21 8.评语表-------------------------------------------------------------21

相关主题