快捷搜索:  汽车  科技

数字骰子设计编程(iLaser造物课程数码骰子)

数字骰子设计编程(iLaser造物课程数码骰子)使用光电传感器来检测时,需要减少环境光对程序的影响,将光电传感器设计在底部,防止光电传感器与桌面太近造成误差,底部也设计了两层,将光电传感器与桌面隔开一段距离。同时Nano主控板安装在底部,需要将螺丝孔预留。在考虑椴木板之间拼接紧密,设计了带有尖角的卡扣。模型使用的材料是3mm的椴木板。骰子有6个面,为了使骰子具备层次感,使用双层的结构,第一层镂空设计,第二层在适当的地方绘制图案。侧面设计美国队长的图案,它的内层绘制五官。美国队长的盾牌则使用镂空设计,在外层也绘制了图案。

项目背景

在日常生活中,与朋友一起游戏时,像下飞行棋、大富翁等游戏,会经常使用到骰子,甚至决定哪位朋友带饭、打扫卫生也会用到骰子。本实践就以此为切入点,制作一个数码骰子,模拟掷骰子游戏。

本案例使用了3mm的椴木板作为模型材料,iLaser桌面式激光切割机切割模型。

项目分析

这次设计的数码骰子,当骰子被拿起来,再放下时,能够随机显示骰子的点数,同时能够振动给予反馈。

考虑到屏幕只需要显示点数,不需要太复杂的功能,因此选用点阵屏来显示,而振动使用振动马达恰如其分。

数字骰子设计编程(iLaser造物课程数码骰子)(1)

模型设计

模型使用的材料是3mm的椴木板。骰子有6个面,为了使骰子具备层次感,使用双层的结构,第一层镂空设计,第二层在适当的地方绘制图案。

侧面设计美国队长的图案,它的内层绘制五官。

数字骰子设计编程(iLaser造物课程数码骰子)(2)

美国队长的盾牌则使用镂空设计,在外层也绘制了图案。

数字骰子设计编程(iLaser造物课程数码骰子)(3)

在考虑椴木板之间拼接紧密,设计了带有尖角的卡扣。

数字骰子设计编程(iLaser造物课程数码骰子)(4)

使用光电传感器来检测时,需要减少环境光对程序的影响,将光电传感器设计在底部,防止光电传感器与桌面太近造成误差,底部也设计了两层,将光电传感器与桌面隔开一段距离。同时Nano主控板安装在底部,需要将螺丝孔预留。

数字骰子设计编程(iLaser造物课程数码骰子)(5)

整体的设计如下图所示。

数字骰子设计编程(iLaser造物课程数码骰子)(6)

硬件准备

考虑到激光切割后安装的便捷性,主板、传感器、执行器均焊有螺母,方便安装,使用Type-C接口,方便数据的写入。

硬件清单

Nano主控*1

点阵屏*1

光电传感器*1

振动马达*1

10cm连接线*3

硬件一览

Nano主板

数字骰子设计编程(iLaser造物课程数码骰子)(7)

P1~P8端口上有卡口,防止连接线插反。除了USB供电外,还可以使用7~12V电池盒供电。

点阵屏

数字骰子设计编程(iLaser造物课程数码骰子)(8)

点阵屏的卡口在背面。

光电传感器

数字骰子设计编程(iLaser造物课程数码骰子)(9)

光电传感器的卡口也在背面。

振动马达

数字骰子设计编程(iLaser造物课程数码骰子)(10)

光电传感器的卡口也在背面。

连接线

数字骰子设计编程(iLaser造物课程数码骰子)(11)

有四种规格可以选择,分别是10cm、15cm、20cm、30cm,本教程使用的都是10cm的连接线。

连接示意图

数字骰子设计编程(iLaser造物课程数码骰子)(12)

光电传感器接着P1端口,点阵屏接在P2端口,振动马达接在P3端口。

程序编写

环境准备

Mind

本教程使用的是Mind (V1.7.1 RC2.0)图形化编程环境。

拓展库

拓展库中包含电子模块所用的图形化模块,同时还包含Python人工智能模块。

Mind 上导入拓展库

1、切换到上传模式

进入到Mind ,刚开始的界面是Scratch编程界面,点击上传模式,切换到ArduinoC/MicroPython编程模式,Nano主板只支持ArduinoC编程和Python编程模式。Nano编程使用上传模式。

数字骰子设计编程(iLaser造物课程数码骰子)(13)

2、加载拓展库

点击拓展,Nano主板兼容Arduino Uno,点击“拓展”->选择Arduino Uno主控板。选择主控板后,点击用户库,再导入拓展库。

数字骰子设计编程(iLaser造物课程数码骰子)(14)

逻辑介绍

数字骰子设计编程(iLaser造物课程数码骰子)(15)

重难点解析

1、使用2个子流程来优化逻辑,让子流程只注重单一的功能,类似单例模式。

2、在主流程中设计“重复5~10次掷骰子并振动”,这里谢谢同事发现了这个问题,如果只是“掷骰子并振动”,那么只需要将骰子抬起,随机产生点数6后,在瞬间放下去,就有可能最终的点数是6。

完整程序

主程序

数字骰子设计编程(iLaser造物课程数码骰子)(16)

骰子显示点数

数字骰子设计编程(iLaser造物课程数码骰子)(17)

掷骰子并振动

数字骰子设计编程(iLaser造物课程数码骰子)(18)

上传程序

将Nano主板连接到电脑,选择相应的串口,如果没有显示串口,点击“一键安装串口驱动”。点击上传到设备,即可将程序上传到Nano主板。

数字骰子设计编程(iLaser造物课程数码骰子)(19)

模型搭建

激光切割模型

将图纸导入后,进行加工。

数字骰子设计编程(iLaser造物课程数码骰子)(20)

数字骰子设计编程(iLaser造物课程数码骰子)(21)

数字骰子设计编程(iLaser造物课程数码骰子)(22)

工具一览

数字骰子设计编程(iLaser造物课程数码骰子)(23)

拼接步骤

Step 1、在底板上安装Nano主板、光电传感器、振动马达。

数字骰子设计编程(iLaser造物课程数码骰子)(24)

数字骰子设计编程(iLaser造物课程数码骰子)(25)

Step 2、将光电传感器连接到P1,振动传感器连接到P3,连接线上有卡口,防止插反。

数字骰子设计编程(iLaser造物课程数码骰子)(26)

Step 3、左右两个面板安装在底板上。

数字骰子设计编程(iLaser造物课程数码骰子)(27)

数字骰子设计编程(iLaser造物课程数码骰子)(28)

Step 4、将点阵屏扣在顶板的内板中,用螺丝固定在外顶板上。

数字骰子设计编程(iLaser造物课程数码骰子)(29)

数字骰子设计编程(iLaser造物课程数码骰子)(30)

数字骰子设计编程(iLaser造物课程数码骰子)(31)

Step 5、将点阵屏连接在P3上。

数字骰子设计编程(iLaser造物课程数码骰子)(32)

Step 6、将顶板安装在顶部,同时将左右两块侧板安装在侧面。

数字骰子设计编程(iLaser造物课程数码骰子)(33)

数字骰子设计编程(iLaser造物课程数码骰子)(34)

Step 7、将四个侧面和底面的外板安装上。

数字骰子设计编程(iLaser造物课程数码骰子)(35)

数字骰子设计编程(iLaser造物课程数码骰子)(36)

Step 8、连接上电池,等待系统执行程序。

数字骰子设计编程(iLaser造物课程数码骰子)(37)

结束语

激光切割机使用iLaser,为了更好的外观造型,在设计上,使用了多层结构,让整体层次感更鲜明。硬件与激光切割相结合,使作品有很强的延展力。

猜您喜欢: