四旋翼之路——前篇

来源:互联网 发布:剑灵捏脸数据下载不了 编辑:程序博客网 时间:2024/04/29 01:04

  本人大一学生,微电子专业,上学期的时候接触到了单片机,最开始的时候学习的是51单片机,也做了一些小东西。最近做了一个能够智能避障的小车,功能也很简单,就是在遇到障碍物之后就停下来,然后转动舵机,控制超声波探头对前方、左边和右边进行探测,通过算法根据这些数据控制小车进行相应的转动,避开障碍物,然后继续前进,如此循环往复。做完这些事后,我就发现51单片机的一些缺点:定时器、中断少。这就造成了一些问题,最大的问题就是PWM产生的问题,我原来的想法是对四个轮子进行单独的控制,每个轮子都用PWM进行单独控制,以便于在前进过程中对小车进行更加精确的控制。但是这时候问题就来了,我用的这款51只有两个定时器,超生波测距,舵机控制都需要使用定时器,再产生四路PWM显然就是比较麻烦了,如果可以的话,程序肯定也是相当的麻烦。虽然有些51系列的单片机可以做到女对PWM的自带硬件支持,不过鉴于51较为孱弱的计算性能,我还是打算换一款芯片。

  在查阅了一些资料之后,我了解到了stm32这款芯片 。其实在之前,我也买了一块树莓派,可我为什么最后又选择了stm32呢,这就要涉及到我学习这些芯片的目的了,这就是本文的重点———做四旋翼树莓派搭载的linux系统并不属于实时系统,这就决定了它并不适合用来做飞控,虽然它也可以搭载在飞机上来实现一些更高级的功能,但现在对我来说还用不到。下面是我对stm32的一些了解,它有丰富的中断,多级中断优先级,并且还可以搭载实时操作系统ucos,功耗低,超过30路的PWM输出,要知道,树莓派的功率可是能到10W的,这对于一个无人机来说也是一笔不小的电源开销了,并造成续航时间的缩短。

 学习一款芯片首先就要买一块开发板,在x宝逛了一些时间后,我选择了一款开发板,搭载了stm32f103vet6,基于arm cortex m3内核,72MHz的主频。在大部分事情都准备好了之后,我就要开始制定自己的阶段计划了。第一阶段是设计好系统框架,决定要有那些模块和功能,然后学习stm32,这大概会持续二十几天。

  第二阶段是学习数模电知识,这大概会持续一个多月时间

  在完成一定的知识积累之后,便进行模型设计,这是第三阶段在这里要说明的是,虽然在x宝有大量的机架能够买,但是我觉得那些并不适合。如果我买了机架,我就要改变自己的系统框架设计来适应这个机架,这样的话有些功能就不能实现了。所以在这个阶段,我就要学习solidworks的使用,solidworks是一款3D设计软件,是一款功能丰富的机械设计软件,我个人觉得要比AutoCAD容易。在学习solidworks的同时,也要学习Altium Designer———PCB设计软件,这个阶段大概持续两个月。

  第四阶段,进行软件部分设计,持续一个月。

  第五阶段,进行调试,做最后准备,这个阶段大概十天。

  至此,四旋翼的初步设计完成,下一步考虑加入更为丰富和炫酷的功能。

  这周我的计划就开始了,以后此此博客每周更新一次,以分享的我的学习成果,并接受大家的批评指正,监督我的计划实施。

 

2 0
原创粉丝点击