hnyzcj 发表于 2016-3-7 22:58:18

3D+Arduino课程(面向中学生)——迷你交通信号灯(初稿)

本帖最后由 hnyzcj 于 2016-3-7 23:05 编辑

案例一:迷你交通信号灯
案例简介:本次课程介绍一个单向交通信号灯模型的制作,实现红、黄、绿三盏灯间隔一定的时间分别亮灭。
技术要领:Sketchup设计制作信号灯的机械结构件;
                  3D结构件的打印与安装;
                  物理电子电路连接结合与焊接;
                  Arduino 编程控制功能实现。




器材列表:
       工具:Overlord pro 3D打印机
                  焊笔
                  焊丝
       材料:PLA(黄、灰)
                  LED(红、黄、绿)各1颗
                  电阻220欧(3根)
                  Ble Romeo
                  杜邦线(母-母)            
                           
制作过程:
第一部分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第第三部分:代码编写


void setup() {
// initialize digital pin 13 as an output.
pinMode(2, OUTPUT);
pinMode(4, OUTPUT);
pinMode(7, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
digitalWrite(2, HIGH);   // turn the LED on (HIGH is the voltage level)
digitalWrite(4, LOW);    // turn the LED off by making the voltage LOW
digitalWrite(7, LOW);
delay(10000);            // wait for a second
digitalWrite(2, LOW);   // turn the LED on (HIGH is the voltage level)
digitalWrite(4, HIGH);    // turn the LED off by making the voltage LOW
digitalWrite(7, LOW);
delay(4000);         
digitalWrite(2, LOW);   // turn the LED on (HIGH is the voltage level)
digitalWrite(4, LOW);    // turn the LED off by making the voltage LOW
digitalWrite(7, HIGH);
delay(10000);      
}

第四部分:组装
第五部分:测试与改进       测试上述交通信号灯的功能。想一想如果改进,做成可以双向控制的交通信号灯。

牛哥两千 发表于 2016-3-7 23:08:38

沙发

大连林海 发表于 2016-3-8 07:43:47

不错的教学案例 我可以用起来了 不过 我要用图形化来做了

丄帝De咗臂 发表于 2016-3-8 08:45:41

最后那个配图不错

hnyzcj 发表于 2016-3-8 09:04:05

丄帝De咗臂 发表于 2016-3-8 08:45
最后那个配图不错

啊哈哈哈,最后是百度的。

iooops 发表于 2016-3-8 11:46:43

呀~神奇的交通灯~~

丄帝De咗臂 发表于 2016-3-8 12:31:01

hnyzcj 发表于 2016-3-8 09:04
啊哈哈哈,最后是百度的。

百度出品,必属精品

hnyzcj 发表于 2016-3-8 12:39:35

丄帝De咗臂 发表于 2016-3-8 12:31
百度出品,必属精品

你现在一套套的

源代码 发表于 2016-3-8 13:04:54

普及红绿灯的相关知识与原理,让一部分有效的减少了闯红灯的次数,哈哈~~

源代码 发表于 2016-3-8 13:05:40

教程很详细{:5_148:}

dsweiliang 发表于 2016-3-8 20:49:06

很详细的教程
页: [1]
查看完整版本: 3D+Arduino课程(面向中学生)——迷你交通信号灯(初稿)