您当前的位置: 首页 > 

张巧龙

暂无认证

  • 1浏览

    0关注

    1208博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

DIY逗比的时钟,制作资料100%开源!

张巧龙 发布时间:2019-08-21 14:29:42 ,浏览量:1

点击上方“大鱼机器人”,选择“置顶/星标公众号”

福利干货,第一时间送达!

640?wx_fmt=gif

本文转自公众号 | 达尔闻说

作者:稚晖

逗比钟的创意原型最早来源于国外的一个Arduino项目,当时我看完也是深深地被其由内而外散发的沙雕气息所折服,所以就顺着它的思路自己设计了一个,改进了一下结构,增加了一些额外的功能。

制作这个逗比钟的绝大部分材料都可以在网上买到(包括零件加工),成本的话也不高,在下面的教程中我使用的主控电路板是自己设计加工的。

对于小白一点的同学,如果不想自己制作焊接PCB的话,可以直接购买下面推荐型号的开发板,也是可以实现完全一样的功能的。

那么首先说明一下,由于是电子DIY项目,所以最好需要你有一丢丢的电子基础:会Arduino的话就完美了;

不会也没有关系,电路的连线不超过10根,代码都已经提供好了,一键下载即可。

文末附该电子钟开源资料的获取方式。

 ▲  逗比钟的手写报时功能,看着很累

制作材料

640?wx_fmt=gif

9g舵机3个 10元

白板笔1支  3元

NodeMcu ESP8266开发板1块 15元

舵机拉杆 1.2MM Z字钢丝 1元

M3x3 平头螺丝若干

M3 螺母若干

M3x12 螺丝若干

M3x6 T型对接螺丝若干

亚克力激光切割零件一批

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=jpeg

制作过程

640?wx_fmt=gif

拿到材料之后,可以照着3D模型文件自己组装起来,组装很简单,但是有的地方要注意一下顺序。

可能有的同学不知道怎么查看3D模型文件,这里说明一下,很简单的。Windows 10其实就自带3D文件查看器,如图以下的几个软件都是可以用来打开STL格式的3D文件的。

640?wx_fmt=jpeg

这里推荐使用3D Builder来查看,打开后可以自由旋转缩放查看细节↓

640?wx_fmt=gif

一个爆炸图视频供大家参考:

以下是我加工回来的一堆亚克力:

640?wx_fmt=jpeg

先拼装好舵机臂,注意机身有的地方是用螺丝和螺母固定,有的地方可能需要使用502胶水来粘合。舵机的摆向不要弄错了↓

640?wx_fmt=jpeg

然后安装龙门架和抬笔舵机↓

640?wx_fmt=jpeg

再安装左右臂,手臂的铰链是通过上面写的材料中的对接螺丝固定的,大小臂都是3mm厚度所以对接螺母的长度是6mm刚好;大臂和舵机之间是通过舵机附赠的连接件和502胶水粘合的↓

640?wx_fmt=jpeg

这里需要注意的是上面圈出的手臂和舵机轴的螺丝先不要上,因为后面还有一个舵机角度的校准过程,校准完毕之后再上固定螺丝。

640?wx_fmt=jpeg

把舵机臂装上架子之后的样子,两者的连接铰链使用的也是机臂上的对接螺丝。

640?wx_fmt=jpeg抬笔舵机和机臂的连接使用的是一根舵机连杆铁丝,需要自己用尖嘴钳弯折一下,跟机臂舵机一样,摆臂塑料件的固定螺丝先不上,等下载程序校准好之后再固定。

640?wx_fmt=jpeg

最终完成品的样子,背面用透明的亚克力切割的,因为PCB上加了一个光敏电阻,后面可以实现关灯之后自动停止工作。↓↓↓

640?wx_fmt=jpeg

硬件组装完毕,接下来是电路的连接,如上图所示我使用的是自己设计的一个小PCB电路板,原理图和PCB文件我都开源了。

640?wx_fmt=jpeg

如果不想自己加工PCB,那么我来介绍一下使用NodeMcu的电路连接方法:

640?wx_fmt=jpeg

如上图,左、右、抬笔舵机的黄色信号线分别连接NodeMcu的D1、D5、D6引脚,舵机的黑色Gnd线都接Gnd也就是电源负极,红色Vcc线都接电源正极输入。

没有其他需要连接的了,nice & easy~

软件调试

640?wx_fmt=gif

下一步是给开发板上传程序,如果使用过Arduino的话,应该没有任何压力,首先安装好ESP8266的板卡包,以及项目需要的两个库文件

打开Arduino IDE,选择好板卡和串口点击上传即可,IDE配置如下,其中的端口根据你们自己的实际端口选择↓

640?wx_fmt=jpeg

对于不熟悉Arduino的同学,先去Arduino官网下载一个IDE,链接是:

www.arduino.cc/en/Main/Software

然后,把我给的工程中的:

ArduinoLibraries如果Arduino IDE没有安装ESP8266Arduino15.zip 

文件解压到电脑上的这个目录 :

C:Users[你的用户名]AppDataLocal

把下载好的Arduino IDE解压,右键我提供的工程中的文件:

ArduinoDoubiBot_FirmwareDoubiBot_Firmware.ino

选择:打开方式-选择其他应用-找到IDE目录里的arduino.exe即可,然后按上面的配置图中一样的方式配置,插上开发板点击左上角的上传箭头等待上传完毕就ok啦。

这里解释代码里面的一些内容:

//#define DRAW_WEATHER	
//#define DRAW_TIME

这两行被注释了,所以下载完程序之后默认是没有任何动作的,如果需要手写时间则删除第二行前面的//,如果要画天气则删除第一行的//

const char* SSID = "***";    // 要连接的WiFi的名称	
const char* PASSWORD = "***";    // 要连接的WiFi的密码	
const char* CITY = "shanghai";

这个大家都看得懂,改成你家的WiFi名称和密码即可,使用天气的话下面的CITY改成你在的城市的小写拼音。

// uncommet this to do calibration, code will be blocked here	
control.Calibrate();

上面这一行比较关键,前面说的校准就是在这里设置的,首先按照上面的说明修改好代码之后,下载完第一次运行的时候舵机会上电转到一个位置之后固定不动,因为代码会在这一步卡住。这时候需要你调整三个舵机的塑料摆臂的位置,变成如下状态:

640?wx_fmt=jpeg

 ▲  两个摆臂呈L型

640?wx_fmt=jpeg

 ▲ 抬笔舵机呈45度角

全部调整好了之后,把这一句注释掉:

// uncommet this to do calibration, code will be blocked here	
// control.Calibrate();

再次上传程序,就可以看到机器人开始画东西了,大功告成~

下面这个是视频演示的是通过电脑端串口助手发送命令到逗比钟让它执行的效果,注意白板的左下角是零点坐标。

详细的代码注释大家可以参考我给出的工程文件,祝大家玩得开心。

获取方式

1、本公众号【大鱼机器人】,后台回复关键词:电子钟

2、关注公众号【达尔闻说】,后台回复关键词:电子钟

640?wx_fmt=png

大家好,我是张巧龙,一名电子技术爱好者,会写一些关于硬件与软件结合的技术文章,若觉得文章对你有帮助,转发分享,也是我们继续更新的动力。

640?wx_fmt=jpeg长按识别图中二维码关注

关注
打赏
1665727216
查看更多评论
立即登录/注册

微信扫码登录

0.0464s