问:为什么选择用Cortex-M4的内核?
答:因为实验室只有这一款TI公司的单片机。(补充:这个回答肯定不行,他应该想问的是Cortex-M4的内核的优点。答:因为他集成了单精度浮点内核和高性能模数转化器,Cortex-M4的DSP性能比16位DSP芯片要好,但不及32位DSP芯片。他的的目标应用包括电机控制、汽车电子、电源管理、嵌入式音频以及工业自动化。当时我们实验室只有这一款TI的单片机所以就选择了这一款。)
问:那最后为什么没有用430的板子呢,是出于哪方面考虑的?
答:比赛的时候有些器件不好买,当买到430的时候时间不允许临时更换单片机了。(补充:虽然这是事实,但是显然与面试官的初衷不符。答:虽然MSP430的功耗很低,但是它是16位的DSP芯片,相比之下TM4C123G的浮点运算能力更强,我们在项目中对浮点运算的能力要求高一点,所以我们选择了TM4C123G这款单片机。)
问:你这个题目要求是低功耗,有实测过他们的功耗是多少吗?
答:TM4C123G提供低至 1.6μA 的低功耗模式。(在百度上只能找到个这)
问:那你还说一下你软件框架是怎么设计的吧?
答:首先利用红外传感器检测赛道信息,运用归一化的方式使小车完成黑线的循迹,然后通过两路PWM来控制电机的运动,当检测到停车点时使两个电机的PWM输出为零实现停车(这个在百度上搜的都很宽泛,所以我就自己写点软件流程吧。)
问:归一化是怎么弄的呢?
答:归一化是一种无量纲处理手段,使物理系统数值的绝对值变成某种相对值关系。公式是 (当前值 - 最小值)/(最大值-最小值),这个最大最小值可以自己手动设置,也可以通过左右晃动来实现最大最小值的数据采集。
问:(K66)主频是多少?
答:180M。(单片机主频和人的心跳一样,就是生命源泉,支持它工作的原始能源。也称时钟源(脉冲信号),一般由晶振来完成。一般用MHz来表示,就是1秒能完成多少个工作周期。)
问:那都跑了那些应用呢?
答:图像处理,自动寻迹,终点停车,红外避障,电机控制,舵机控制,拨码开关,蜂鸣器/LED指示等
问:我们说下细节,这上面都跑了哪些控制环路呢?
答:控制环路—PID。
舵机用的位置式,公式是:输出 = 定值/中值 + (P*偏差 + D*(偏差-上次偏差));(偏差 = 左值-右值 或者 偏差 = 左右值差比和的形式)
电机用的增量式,公式是:输出 += P*(偏差 - 上次偏差) + I*偏差 + D*(偏差 - 上两次偏差 + 上次偏差);(偏差 = 设定速度 - 当前速度)
问:电机的主控(这应该是驱动)是自己做的吗?有没有做检流?
答:自己做的,没有电流环,只有速度环。
问:电机的输入输出?输入的速度从哪得来的?调PID的时候三个参数都有用吗?(PID三个参数的作用)
答:电机输入设定速度,输出他当前要执行的速度,输入速度根据实际的路况采用经验法分段给定。电机的话三个参数都有用到:增大比例系数P,一般会加快系统响应;积分I消除静态误差;微分D预测趋势提前调整。
问:舵机的控制带宽?
答:(待补充)
问:模糊控制?
答:(待补充)
文章评论