圆曾经的小车梦,造一台智能小车(一)
1、智能小车项目基本规划
智能小车我们再熟悉不过了,读大学期间,部分优秀且动手能力强的小伙伴参加过各种省级、国家级的竞赛,拿到了不少奖,也算是没有给自己的大学留下遗憾。
最近在不少嵌入式相关的群里(我在里面)以及我本人微信公众号后台看到有人问:杨工,智能小车怎么造?需要哪些材料?圆曾经的小车梦吧!二话不说,杨工立马淘宝走起,采购了一批材料,开始把自己曾经造小车的路再走一遍,其一,这可以作为一个开源项目,大家一起来做,提高自己的动手组装硬件小车的能力,提高自己写代码完成项目的能力,其二,增加自己的项目经验,以后出去找工作也有话题和面试官谈。
本期小车规划内容大致如下:
1、购买套件,基础小车驱动硬件配置 2、红外遥控控制小车基础demo实现 3、wifi控制小车基础demo实现 4、基于2、3点添加拓展模块增强小车功能(比如wifi图传小车,循迹小车,避障小车等等) 5、增加多硬件平台开发经验(不限于51、stm32,还会上stm8、arduino,华大MCU,TK499,imx6ul,imx287a,tiny4412等等) 6、增加跨平台开发经验(我们不仅仅只会单片机编程,我们还要根据这个项目进行拓展,学习Android app编程,QT软件编程,嵌入式Linux编程等等)
大概的内容就是以上这些,会不定期更新,同时也会听取大家的意见,随时进行项目变动,比如今天开源群就有一个小伙伴提了一个需求,能不能把群主分享的各种开源组件在这个小车上用起来呢?
没问题,安排!杨工本人做事风格就是这么直接,说做就做,从不放弃也不马虎应付,对于本职工作也是一样,只要是我的东西,着急那就是拼了自己的休息时间回家也得加加班干到凌晨也得干好,这是我个人做事的态度。
2、智能小车套件组装及测试
2.1、智能小车基本框架部分:
https://v.youku.com/v_show/id_XNDEzOTUwMjM3Ng==.html?spm=a2h3j.8428770.3416059.1
4WD小车底盘的安装可以看看上面这个链接的视频,基本上都大同小异,看完跟着实操就对了!
如果觉得杜邦线抵挡不了强大的驱动电流,可以考虑换粗一点的线。
电池供电部分最终效果:
2.2、智能小车增加测试的STC单片机开发板(当然你可以选其它的)
测试仅仅只是让单片机IO输出电平,测试电机正反转,以方便我们后面在程序上设计接口,控制小车移动,最终安装效果图如下:
编写一个最简单的51单片机控制程序:
#include <reg52.h>
//L298N模块1连接
sbit Module1_IN1 = P2 ^ 7 ;
sbit Module1_IN2 = P2 ^ 6 ;
sbit Module1_IN3 = P2 ^ 5 ;
sbit Module1_IN4 = P2 ^ 4 ;
//L298N模块2连接
sbit Module2_IN1 = P2 ^ 3 ;
sbit Module2_IN2 = P2 ^ 2 ;
sbit Module2_IN3 = P2 ^ 1 ;
sbit Module2_IN4 = P2 ^ 0 ;
/*
1000 ===> 左前轮后转
0100 ===> 左前轮前转
0010 ===> 右前轮前转
0001 ===> 右前轮后转
1000 ===> 左后轮前转
0100 ===> 左后轮后转
0010 ===> 右后轮后转
0001 ===> 右后轮前转
//四轮同时向前转
0110 1001 0x69
//四轮同时向后转
1001 0110 0x96
*/
//****************************************************
//主函数
//****************************************************
void main()
{
while(1)
{
//四轮同时向前转
P2 = 0x69 ;
Delay_ms(2000);
//四轮停止
P2 = 0x00 ;
Delay_ms(2000);
//四轮同时向后转
P2 = 0x96 ;
Delay_ms(2000);
//四轮停止
P2 = 0x00 ;
Delay_ms(2000);
}
}
//****************************************************
//MS延时函数(12M晶振下测试)
//****************************************************
void Delay_ms(unsigned int n)
{
unsigned int i, j;
for(i = 0; i < n; i++)
for(j = 0; j < 123; j++);
}
最终效果:
为了满足我项目最基本的要求,我选购了两个stm32f103zet6核心板,一个用在小车上,一个备用调试。
当然还有其它的一些小模块,在后台回复小车
即可获取杨工本人购买套件的淘宝链接,最后祝各位DIY小车成功,如果有兴趣DIY小车买回来有任何不明白的地方欢迎与我交流,谢谢大家!
往期精彩
觉得本次分享的文章对您有帮助,随手点[在看]
并转发分享,也是对我的支持。