- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
案例简介:本次课程介绍一个单向交通信号灯模型的制作,实现红、黄、绿三盏灯间隔一定的时间分别亮灭。
技术要领:Sketchup设计制作信号灯的机械结构件;
????????????3D结构件的打印与安装;
????????????物理电子电路连接结合与焊接;
????????????Arduino编程控制功能实现。
器材列表:
????工具:Overlordpro3D打印机
????????????焊笔
????????????焊丝
????材料:PLA(黄、灰)
????????????LED(红、黄、绿)各1颗
????????????电阻220欧(3根)
????????????BleRomeo
????????????杜邦线(母-母)??????????
????????????????????
制作过程:
第一部分3D建模
??????本次信号灯的机械结构件包括:灯头、灯柱、底座三部分。
??????灯头:
????1.打开Sketchup软件,点击菜单相机——标准视图——顶视图,绘制一个尺寸为25,60的矩形,选择宽度的线条,右击鼠标在弹出的快捷菜单中选择拆分,段为2,如下图所示
??????2.使用直线工具沿刚拆分的中点,绘制一条直线与底线连接,如下图
??????3.选中刚绘制的中线,对其进行拆分,段为4,分别以A,B,C三点为圆心,绘制半径为2.5MM的圆,如下所示。
??????4.使用选择工具删除不需要的线段,删除后如下图所示
??????????5.使用环绕观察按钮对上图进行适当旋转,点击推拉工具对上图进行推拉操作,距离为5MM。
????????6.使用推拉工具删除圆形中的底,使其通透。如下所示
????????7.使用偏移工具,对矩形外框进行偏移操作,偏移距离为2.5。
??????????8.使用推拉工具对外框进行推拉操作,推拉距离为30,如下所示。
??9.通过旋转观察按钮调整上述形体位置,对其底部绘制半径为8的圆,再次使用推拉工具,为其底部开出一个同等大小的圆孔,如下图所示
至此灯头部分绘制完毕。
灯柱:
??????点击菜单相机——标准视图——顶视图
??????1.??用圆形工具绘制一个半径为8的圆,修改其图元信息中的段为99。
??????2.??使用偏移工具对圆进行偏移操作,向外偏移距离为2mm,向内偏移1MM,如下图所示
??????3.使用选择工具选中最内部的圆,按DEL键删除。
??????4.使用推拉工具对内环推拉操作,距离为4。
??????5.使用旋转观察按钮将上述形体翻转,发现其底部没有封闭。
????????6.使用直线工具封闭底部后,删除不必要的线段,使其成为管状。注意下图中红色箭头所指的圆环此时不要删除。
7.使用推拉工具对底部内外圆环分别进行拉伸操作,拉伸距离为50MM和5MM。拉升后效果如下图所示,完成支撑杆的设计。
????????灯座:请参照上述步骤自己设计
第二部分:电路连接
红黄绿正极分别连接数字口2,4,7
第第三部分:代码编写
voidsetup(){
??//initializedigitalpin13asanoutput.
??pinMode(2,OUTPUT);
??pinMode(4,OUTPUT);
??pinMode(7,OUTPUT);
}
//theloopfunctionrunsoverandoveragainforever
voidloop(){
??digitalWrite(2,HIGH);??//turntheLEDon(HIGHisthevoltagelevel)
??digitalWrite(4,LOW);??//turntheLEDoffbymakingthevoltageLOW
??digitalWrite(7,LOW);
??delay(10000);??????????//waitforasecond
??digitalWrite(2,LOW);??//turntheLEDon(HIGHisthevoltagelevel)
??digitalWrite(4,HIGH);??//turntheLEDoffbymakingthevoltageLOW
??digitalWrite(7,LOW);
??
文档评论(0)