原创 自制三维电子骰子

2008-5-21 23:17 4058 3 3 分类: 模拟

一、设计思路
  
首先应将电子骰子做成一个能够投掷和滚动的小正立方体,并在立方体的6个表面上分别安装能够显示不同点数的发光二极管,由装在立方体内部的9V小型电池通
过限流电阻为这些发光二极管供电。然而,由于骰子6个面上的点数不同,每个面上安装的发光二极管只数也各不相同,使骰子的重心不可能正好位于骰子正立方体
的中心,必然存在偏移。于是,经投掷后,骰子最轻的一面位于顶上的几率远大于其他面,该面点数出现的机会就比其他“较重的”面多得多,最终使骰子失去了可
信性和公正性。
  
怎么办?经过一番思考后我们得出结论:在骰子的每个面上都安装7只发光二极管,使它的重心位于立方体的中心。这样投掷时,每个面最终位于顶上的几率相同,
而在投掷后6个面却显示不同的随机值,从而保证骰子的公正性。显然,此方案需要功能比较复杂的电路才能实现。当骰子被投掷出去时,首先要检测骰子的滚动状
态。为此,用一只水银倾斜式开关来担任此任务,这样即便只是摇动骰子也能获得与滚动一样的效果。接着,要产生出现在骰子6个面上的随机数值,此任务由一只
微控制器(即单片机芯片)来担任,以便使骰子保持较小的体积,使用起来更加得心应手。
  
需要考虑的另一个设计问题是:怎样将主电路板与其他5块电路板连接起来?如果连线太多,则不仅麻烦还很不好看。为了减少连线的数量,决定在各电路板之间采
用串行连接,在每块电路板上用一只移位寄存器IC来驱动所在面上的7只发光二极管。这样在6块电路板之间就只需连接4根线,其中两根用于供电,一根用来传
送数据,另一根用来传送时钟信号。
  
此外,还要考虑骰子的消耗电流和电源开关,这里显然不能使用普通的电源开关,因为骰子表面不允许有任何东西突出在外,否则电源开关就会妨碍骰子滚动,甚至
有可能因滚动中受压而自我关断。解决此问题的办法是,在骰子其中一面的凹处安装一只接通电源的按键开关,并使电路在骰子停止滚动时自动断开电源。


二、主电路板

图1是本电子骰子的主板电路图.其核心是Atmel公司生产的AT89C2051-12PI微控制器(IC1),可以将它用于本电子骰子的软件。该微控制
器芯片内部具有保存程序的闪存,无需外接存储器。晶体X1与电容C1、C2组成时钟振荡器,IC1通过它的I/O引脚直接驱动7只发光二极管,由于使用了
小电流发光二极管,无需使用额外的缓冲器。

图1电子骰子主板电路图

图2 2号电路板及其余4块电路板的电路图
  
电源部分与常见的电路稍有不同,因为我们要用按键来使电路接通电源,而由微控制器自己来切断电源。这一功能是由晶体管T1、T2及其周边电路来实现的,
K2是连接9V电池的插座.当按下2号电路板上的按键开关S1时(参看图2中的上图),就有小电流从+9V经晶体管T1的基/射结、电阻R8、K3和S1
流到地,使T1导通,电池开始为三端稳压器78L05(IC2)供电,后者就对其余电路提供稳定的+5V电源电压。如果只是这样,则当松开按键S1时,上
述电流不再流过R8,会使电路失去电源而停止工作,这就要求在投掷骰子的过程中一直保持按下S1,使用起来很难操作。为了解决这一问题,另外增加了电阻
R9、R11和晶体管T2,并由微控制器来驱动T2,当电路接通电源时,微控制器使T2也导通,T1基极电流就经R9和T2流到地,不再依赖于按下S1,
如果微控制器发现骰子有几分钟没有动过,它就停止驱动T2,使骰子自动切断电源,当再次按下S1时,上述过程又再次重复。
  
C5和R10用来为微控制器IC1产生上电复位信号.IC1产生的时钟(CLK)和数据(DATA)信号经    插座K3送到2号电路板,K3
的其余引脚则用来为2号电路板供电和连接该电路板上的按键开关S1。将按键开关S1装在2号电路板上是因为主电路板上元件太多,挤不下了。


三、其余电路板

其余的2号、6号电路板电路彼此基本相同,主要差别是2号电路板上有一只按键开关,而其他电路板上没有此开关。图2中的上图是2号电路板的电路图,下图则
是其余4块电路板的电路图,它们的输出插座K2依次接到下一块电路板的输入插座K1。显然,最后一块电路板(即6号板)无需安装输出插座K2。
  
这些电路板的核心是一只74HCT4094移位寄存器(IC1)。该IC具有并行输出寄存器,它在时钟输入信号的每个上升沿使IC里的8位数据移动1位,
并使第1位取值为输入数据,最后1位则通过该IC的⑨脚移出到下一块电路板上移位寄存器的数据输入端,这样就有效地将所有电路板变成了一个庞大的移位寄存
器。


四、制作
  
各电路板的制作与一般方法稍有不同。为了避免因元件引脚伸出电路板而导致骰子滚动时损坏家具表面,对6块电路板的大多数元件采用了表面安装式贴片元件,对
它们的IC也采用表面安装式IC插座。为了缩短电路板之间的连线,6块电路板各有自己的印板图,见图7。其中,主电路板(即1号板)上的元件最多,2号板
上装有按键开关S1,其余4块电路板的电路彼此相同,只是输入和输出插座的位置有所不同,因而它们的印板图也有所不同。
  
焊电路板之前,先将贴片式元件和IC插座的引脚向外打弯,并按照它们在印板上的实际安装位置剪去引脚的过长部分,再用小功率电烙铁将它们逐一贴焊在相应的
电路板上。每块电路板上各有7个用来安装发光二极管的小孔,它们分别构成骰子6个面上的点状图形。安装前,先按照图3所示将42只发光二极管的引脚打弯成
形,再逐一焊接到位,使每只发光二极管的顶部与电路板的另一面保持平齐即可。焊接时注意发光二极管的阳极和阴极不要焊错。

图3  发光二极管的焊装示意图
    除双列直插式IC外.还有少数元件(如晶体和水银倾斜式开关等)采用的是普通引脚,为了使它们不致穿过电路板来进行焊接,对这些元件也要进行表面安装式焊接,即将它们的引脚剪短并打弯90°再贴焊在电路板上,但要注意,不要将它们的引脚留得过短而不便于焊接。


五、接线和试验
  6块电路板焊好后,即可参照图4将它们连接起来。各电路板之间的连线长度取为5cm左右为宜,如果取得过短,则下一步难以将它们组装在一起,但也不宜取得过长而使连线变得过于松散,连接时应仔细参照图5所示的详细接线图,不要接错。
点击看大图
图4 6块电路板的详细接线图
  
电路板连接完毕即可将IC分别插在各电路板上相应的IC插座上,注意各IC的方向不要插错.然后仔细检查每块电路板,确信一切无误再接上9V电池进行通电
试验,此时6块电路板均平铺在桌面上,便于操作,这是试验电子骰子和排除故障的最佳时机,如果6块电路板已经组装成一个小立方体,则电路板之间的空间变得
非常狭小,再发现故障就很难下手了。试验时,按一下2号板上的开关S1,如果6块电路板上的发光二极管显示随机的点数,则说明电子骰子已开始工作。再摇动
一下1号板来模仿骰子滚动,如果骰子6个面上显示的点数随之出现有规则的变化,而且几秒钟后变化的速度逐渐变慢并最后显示滚动结果的点数,则说明本电子骰
子工作正常,否则应检查和排除故障。


六、总装
  
至此,电路已能正常工作,但看起来还不像是一个真正的骰子,现在需要把6块电路板组装成一个立方体,使它成为一个可以投掷和滚动的骰子。图5给出6块电路
板组成一个立方体的具体位置。组装时,先参照图5将4号板平放在桌面上,再将2号板、3号板、5号板和6号板分别垂直地放在4号板的4个边沿,然后用4小
段长度合适的塑料角材和粘接剂(DIY商店有售)逐一将它们的接合处粘接在一起,构成图6所示的形状。等粘接剂固化后,再安装位于立方体顶上的1号板。

图5 6块电路板组成一个立方体的具体位置

图6已粘接5块电路板的骰子外观
  
由于电池是装在骰子里面的,为便于日后更换电池,1号板应用螺钉来加以固定,而不应粘死。为此,可利用分布在1号板4个边上的4个Φ3mm孔和与之对应的
4段塑料角材来固定它。方法是,先在1号板周围与它接合的其他4个板的边沿各粘上一段塑料角材,待粘接剂固化后,将1号板平放在这4段角材上面,在1号板
4个Φ3mm孔下面的塑料角材上细心地各钻一个小2.5mm的孔,再用Φ3mm丝锥给它们攻上螺纹。这样,就可以用4颗Φ3mm螺钉将1号板与其他板组装
成一个立方体了。如果要将螺纹做得更结实一些,可先在钻孔处粘接一片塑料以增大角材的厚度,再进行钻孔和攻丝。
    然后,将电池接好并裹上棉毛或泡沫橡胶等松软的绝缘材料,再塞入骰子内部,电池周围应填满绝缘材料,以免骰子滚动时电池与周围电路板上的元件接触而产生短路,最后用螺钉装上1号板,按各人的爱好对骰子表面进行一番装饰,本电子骰子即可投入使用。
点击看大图
图7电路印板图


2008-5-19 19:10:29
---------------------------------------------------------------
综合电子论坛欢迎您!

文章评论0条评论)

登录后参与讨论
我要评论
0
3
关闭 站长推荐上一条 /2 下一条