<form id="1tbf9"><nobr id="1tbf9"></nobr></form>

          <address id="1tbf9"></address>

            <address id="1tbf9"></address>

                    <form id="1tbf9"></form>

                    ./t20160131_321718_taonews.html
                    專題
                    首頁  >  專題  >  媒體視點  >  名刊精選  >  《無線電》

                    《無線電》

                    開博時間:2016-07-01 14:43:00

                    1955年創刊,是國內電子科普領域創刊最早、發行量最大的知名雜志,累計發行量超過3億冊,倡導科普、興趣、實作、分享的辦刊理念。

                    文章數
                    分享到:

                    會躲避的電子槍靶

                    2016-01-31 21:28:24

                        你還在網上苦苦搜索中意的槍靶紙嗎?你還在對著那些無趣的靶紙開槍嗎?何不自己開動大腦,動手制作一個有趣并心儀的槍靶呢?在本項目中,我們將嘗試用激光筆充當手槍,完成一個被擊中時可以尖叫和躲避的電子槍靶作品。

                           思路

                    將充當手槍的激光筆直接對普通的槍靶開槍是沒有任何反饋的,但是如果槍靶上裝有可以感受光線強度的傳感器可就不一樣了。當傳感器感受到激光照射時,可以告訴槍靶的執行裝置,執行我們想讓它執行的所有動作。

                    激光筆又稱激光指示器,是一種便攜的筆型激光發射器,常見的有紅光、綠光、藍光等,這里我們使用的是紅光激光筆,僅用兩節電池供電。需要注意的是,一定不要用激光筆直射眼睛,否則會造成傷害。

                    能夠感受光線強度的傳感器當屬模擬環境光線傳感器了(簡稱光線傳感器),它是基于環保型光敏二極管的傳感器,可以用來對環境光線的強度進行檢測,其值的范圍為01023。光線越強,其輸出的電流值越大,光線越弱,輸出的電流值越小。我們可通過模塊上大寫AAnalog的縮寫)的標志,識別出這是一款模擬傳感器,接線時只需連接到Arduino的模擬針腳即可。

                           那么如何實現槍靶受到傷害時發出的尖叫聲呢?很簡單,一個小小的蜂鳴器就OK啦!

                           蜂鳴器是一款簡單的發聲裝置,只要簡單的高低電平信號就能驅動。當然也可以通過頻率來控制音調,從而能夠模擬我們生活中的許多聲音和音樂。

                           至于如何完成具有躲避功能的槍靶,則可以利用舵機完美地解決這個問題。

                    舵機也稱伺服電機(見圖3),是一種位置伺服的驅動器,主要是由外殼、電路板、無核心電機、齒輪與位置檢測器所構成。舵機的工作過程是把所收到的電信號轉換成電機軸上的角位移或角速度輸出。這里我們使用舵機的轉動角度為0°~180°。

                           原型

                    光線傳感器模塊自帶了3P接線,使用時黑線接GND、紅線接正極、藍線接信號腳,可以使用兩頭公的杜邦線接入Arduino,我連接的是2號模擬針腳。

                    蜂鳴器是自帶兩根針腳的數字傳感器。使用時,短針腳接GND,長針腳接信號腳,使用公母的杜邦線接入Arduino,連接的是2號數字針腳。

                    舵機同光線傳感器一樣,自帶了3P接線,但顏色不同,使用時,棕色線接GND,紅線接正極,橙色線接信號腳,我選擇的是7號數字針腳,具體接線如圖4所示,實物連接如圖5所示。

                    接下來就要開始編寫代碼了,我們采用的編程工具是Mixly(米思齊,官方下載地址:http://xbed.org/,當然也可以通過謝作如老師的個人博客來下載:http://blog.sina.com.cn/xiezuoru)。那么如何借助光線傳感器,實現當用激光筆對槍靶“開槍”時,讓槍靶尖叫起來的效果呢?

                    首先,我們需要知道當激光筆照射到光線傳感器時,檢測到的光線值為多少,這可利用串口輸出來獲知。打開串口監視器,當激光筆直射光線傳感器時,可以看到一系列較穩定的1000左右的數值,見圖6。當激光筆照射光線傳感器周邊時,數值變為700左右;當不使用激光筆時,數值在300左右(不同的環境,數值不同);當用手遮住光線傳感器時,數值變為0。

                           現在我們使用激光筆、光線傳感器和蜂鳴器來模擬當槍靶受到傷害時發出尖叫聲的效果,即當光線值大于700時,蜂鳴器響起,代碼如圖7所示(為了增強打中槍靶的真實感,這里我們以輸出值700為判斷條件,蜂鳴器模塊的頻率值也可以根據自己的需要設置)。

                           那么,又如何利用舵機實現當槍靶受到激光筆照射后的躲避效果呢?

                           舵機默認情況下的角度為90°。如果我們希望當槍靶被擊中后,能夠自動向一邊躲避(即以一定的角度轉動),當再次被擊中后,又向另一邊躲避,則需要一個變量k來記錄舵機當前的角度值,以便當槍靶被擊中后,舵機的角度也隨之發生改變。了解了這些內容,就可以動手編寫代碼,實現“當槍靶受到傷害時,可以尖叫并左右躲避”的效果了,完整代碼如圖9所示。

                           改進

                    由我們的生活經驗可知,當我們受到傷害時,總是本能地向一個不確定的方向躲避,而不是有規律地左右擺動。那么利用舵機實現槍靶的躲避時,是否也能實現隨機躲避的效果呢?答案是肯定的。

                    要想舵機實現隨機擺動,只需設定一個隨機擺動的角度值即可,這可利用隨機模塊來實現。如果將這樣的模塊放到主程序中,可以得到30~150之間的一個任意值。

                           掌握了這些,我們就可以對之前的程序做一些改進,實現當槍靶受到傷害時,可以尖叫和隨機躲避的效果了,完整代碼如圖11所示。

                       作品

                    我們把這個會躲避的電子槍靶包裝一下。首先,找一塊硬紙板裁剪成圓形作為槍靶;然后,再用半張紙把光線傳感器的3P線卷起來,用膠帶固定在舵機上;最后,再找個大小合適的盒子,把板子、線路之類的東西封裝起來,就大功告成啦!怎么樣,有沒有又酷又漂亮的感覺,趕緊動手試一試吧。

                    作者:張敬云  楊潔


                    上一篇:給自己置辦一個年貨 ——節日抽獎盒子
                    下一篇:門多西諾電機:給我陽光我就轉
                    ©2011-2020 版權所有:中國數字科技館
                    未經書面許可任何人不得復制或鏡像
                    京ICP備11000850號 京公網安備110105007388號
                    信息網絡傳播視聽節目許可證0111611號
                    國家科技基礎條件平臺
                    久久这里只精品国产免费99热4_一起射久久_久久在线视频_日日天天夜夜久久_日日扞夜夜燥国产