image.png

系统概述

产品背景

目前,芯片控制已经称为一种趋势,凡事涉及到与电子设计相关的比赛,都会捕捉到芯片的影子。但是学习芯片控制的知识需要C语言、数字电路、电子电工等多门学科的知识储备,对入门的人群要求较高。同时在实际的学习开发过程中,如果缺乏时间的积累,总会存在一些难以逾越的错误(即使广大电子爱好者会在排错之后分享自己的排错经历,不过当越深入的时候,发现可供参考的资料越少)。基于以上种种因素,很多电子爱好者入门一段时间后之后便放弃了,尤其对于我们机械的同学,要做出一个像样的成品必须自学,最终的目的可能是仅是为了控制机构的运动,却投入了大量的时间。因此,减少广大电子爱好者在控制机构运动上所花费的时间,而将精力放在作品创新上,我决定将程序对电机的运动控制封装成模块,便于电子爱好者使用。

产品目标

使用者无需具备专业知识(编程相关、电机相关),即可使用本产品对多个舵机进行控制——选择控制旋转角度、与上一个动作的间歇时间。

产品的主流程

本产品通过采集用户的需求数据,即按键输入,由已烧录在单片机中的程序进行处理,最后将处理结果反馈给运动模块,完成舵机的对应动作。
功能说明

功能说明

模块划分

本产品分为使用运动模块、操作模块和控制模块。
image.png
图1运动模块舵机组
image.png
图2运动模块
运动控制
image.png
图3控制模块
image.png
图4操作模块选择舵机
image.png
图5操作模块
选择时间间隔
image.png
图6操作模块总控
image.png
图7操作模块
输入反馈
运动模块以舵机为主,与控制运动的单片机直接相连,接收控制模块发来的指令,完成对应动作。
控制模块以单片机为主,分别与操作模块和运动模块相连,主要负责处理从控制模块接收来的信号,处理完成后发送向运动模块。
操作模块以按钮为主,属于用户操作区域,该模块含LED和数码管,达到按键反馈的目的,便于用户使用。

使用角色

本产品意在为电子爱好者打造,对于刚入门该领域的爱好者,可以先通过本产品制作一些作品,藉此培养兴趣。若是对该领域不感兴趣,或是时间紧迫但有舵机控制的需求,也可使用本产品。

使用场景

本产品的核心是通过按键控制舵机,因此和控制运动相关的需求均可使用本产品。

详细说明

步骤说明

本产品的核心是通过按键对多个舵机进行控制,对于每个舵机的控制,可以选择旋转角度和动作间的间隔时间。因此本产品的操作分为三个部分:舵机选择、舵机旋转角度和舵机动作间隔时间。
首先是舵机选择,舵机选择部分由8个按键组成,每个按键选择一个舵机,从【按键1】-【按键8】分别对应1号到8号舵机。一个按键选择一个舵机,按键按下后【数码管w】会显示对应的舵机号,表明之后的按键控制都是对该舵机进行的。
再来说明舵机旋转角度的控制,舵机旋转角度的控制部分由【按键ro】、【数码管x】、【数码管y】和【数码管z】构成,旋转角度默认是0°,每次按下后会增加9°,若角度为63°是,再次按下后角度会变为-63°。
对动作间隔时间的控制,与对旋转角度的控制类似。动作间隔时间(见图5)由14个按键控制,【按键A1】、【按键B1】、【按键C1】和【按键D1】分别是对分钟的+1、+5、+10、+20,第二列的【按键A0】、【按键B0】、【按键C0】和【按键D0】对-1、-5、-10、-20;以及下面对秒钟的控制,【按键E1】对+1,【按键F1】对+5,【按键G1】对+10;【按键H1】对+20,【按键E0】对-1,【按键F0】对-5,【按键G0】对-10,【按键H0】对-20。
最后说一下整体配合,舵机旋转角度和舵机动作间隔时间直接共享【x】、【y】、【z】号位的数码管(见图7),若当前输入从时间间隔或角度选择跳转到其他部分,如舵机选择、时间间隔选择、角度选择中,则后三位的数码管会闪烁两次,表明上次输入的数据已保存,确定按键与上述功能相同。若所有数据均已输入完成,则仅需长按(连按三次)【确定按键ok】,此时数码管会闪烁三次,表明所有输入数据已保存,之后数码管熄灭,进入全局模式,舵机开始进行对应动作。如果不慎将舵机的数据输入错误,可按下【复位按键re】将对应舵机恢复为默认值,若要将所有输入均恢复为默认值,请在全局模式中按下复位按键。
下面是一些默认值:

  • 角度的默认值是0°。
  • 旋转时间的默认值是0min0s。
  • 所有舵机默认是同时动作的。

下图是操作模块的说明图:

注意事项

  • 请勿将本产品放置在温度过高的环境下,防止焊点融化。
  • 请勿将本产品浸泡在水域环境中,防止电路短接。如有需要,请做好主板及电路的放水工作。
  • 请勿将本产品长期放置在露天等易腐蚀环境中。如有需要,请做好防腐工作。