stm32f1 平衡小车 建造章节(一)

这一章节,主要是开始着手平衡小车的实际建造了。

平衡小车底盘和电机、车轮:实验室的

平衡小车支架:是自己在网上采购的

MPU6050、TB6612FNG、OLED、12V电池网上采购(以后功能逐步添加)

单片机:STM32F103C8T6

第一步:摸清各个模块间的连线图,以及C8T6引脚分配。

上图感觉比较抽象,请看下图:

通过上边两个图,我们就能轻易的看懂如何连接TB6612和编码器的来连接方式;现在查看C8T6的引脚功能分布图,然后准备引脚分配。在STM32中定时器自带硬件编码器模式,也就是说直接将定时器配置成编码器模式即可。但是只有每个定时器的通道1和通道二才能使用这个模式。也就是说每一个定时器的通道1和通道2合起来就是一个编码器。

 引脚分配:利用TIM2和TIM4分别控制一个电机(通道1、2设定为编码器模式,通道3或4作为PWM输出)

第二步:开始实际连线

遇到问题一:为了测量模块是否正常工作:先暂时用两节3.7V的电池代替,不知道能不能驱动电机,而且所有的3.3V供电,全部都采用的STM32F103RCT6上的电源引脚供电,但是很遗憾,没有一点反应。

重新检查了一下电路,用万用表仔细测量,结果发现是TB6612FNG直接没有工作的原因,再一看,原来是STBY 引脚并未被置高所导致的,重新给它接上3.3V,终于,小车动起来了。

但是有一个问题,平衡小车冒烟了,更准确地说,是有一个电机里边冒出来一股青烟,没有闻到胶臭味,也不存在各种芯片发烫、电线软化的情况(暂时不懂,继续进行)咨询大佬之后,得到的答案是:这个电机即将坏掉。后续实验中发现在电压大小为3.3V,5V条件下,那个电机不会冒烟,能够正常转动。通过测量得知,TB6612FNG只是将电流变大了,输出的电压(从A01和AO2两端测得)和VM口输入的电压大小几乎一样。且可以通过PWM波来控制转速。

解决方法:依旧给TB6612FNGVM通入7.4V电压,不过通过pwm设置,将AO1和AO2的输出电压给降下来。(当然轮子转速也会降下来)

 

好了,经过实验之后,开始正式连线。(布线,本来想用AD画个板子来用,但是觉得有点小题大做了,暂时将就一下)

打住打住。错了,为什么冒烟呢?因为电机内部不是没有胶,所以不会有胶臭味,很遗憾,这个电机有问题。

 

经过了一周的等待,新买的小车底盘回来了。

重复上述步骤,直接将小车电机接12V电源,没问题,全速转动。

现在剩下的就是小车布局了。我又买了一套支架,以便放置各个模块。但是支架越高,小车重心越不稳。现在先花半小时将小车组装完毕。

下一节,准备写代码了。随后会上传小车的外观造型。

我曾许下十年,只为最美的遇见。我是西伯利亚小强,咱们有缘再见。

 

 

 

 

 

 

 

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
1.时钟源 外部时钟 2.GPIO (实验:点亮LED灯,获取引脚的电平高低,将对应引脚置高置低)。 3.PWM-脉宽调制 主要是调节占空比(在小车中用来实现小车的加减速)。 4.TIMX定时器 5.红外遥控 主要运用了EXTI(外部中断/事件控制器),系统延时(系统滴答定时器SysTick)。 6.超声波避障 了解了超声波工作的原理,主要运用了TIM2定时器(用来定时测距),GPIO口。 7.红外探测 通过对障碍物和光的感应来返回电平的状态,从而达到避障和巡线效果。 8.测速码盘 (通过检测码盘上的凹槽数来获取脉冲数,通过计算公式得到小车当前速度) TIM3定时器(定时测速)。 9.PID算法 为了使小车的速度更快的达到目标值,获取更稳定的速度。 10.系统的使用 我们在小车内加入系统,对小车的数据获取,状态实现任务化,使小车内的运作更加有序。我们主要使用μC/OS-II系统内核来实现系统。在实现过程中,我们了解了系统的任务调度以及任务运行和处理器之间的关系(多任务同时运行)。 μC/OS-II内核中的任务控制块,任务状态,以及多任务和任务的优先级类似操作系统中的进程操作。 11.任务间的通信 主要用到信号量(主要就是PV操作 P操作:占用资源。V操作:释放资源);邮箱(邮箱可以使一个任务或者中断服务子程序向另一个任务发送指针型的变量,通常该指针指向包含了“消息”特定的数据结构)。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值