亚洲精华国产精华精华液网站,你懂的,娇生惯养4ph归寻(矜以),丰年经继拇中文3与其他教材比较

技術頻道

娓娓工業
您現在的位置: 中國傳動網 > 技術頻道 > 應用方案 > 測試Arduino代碼示例及功能介紹

測試Arduino代碼示例及功能介紹

時間:2018-08-15 10:52:39來源:網絡轉載

導語:?業界認為,物聯網(IoT)對緊湊型無頭微控制器板的快速增長起到了重要作用,控制器板專為傳感器和致動器等多種邊界節點設備而設計。

業界認為,物聯網(IoT)對緊湊型無頭微控制器板的快速增長起到了重要作用,控制器板專為傳感器和致動器等多種邊界節點設備而設計。憑借其無線微控制器、少量I/O和極低能耗,此此類開發板和模塊將成為眾多將數據饋送至云分析服務的設備。許多應用都要求更多計算資源、操作員接口和連接選項。

不論是執行網關功能、聚合許多傳感器的數據,還是啟動本地控制或多種功能,都需要具有更多功能和資源的單板計算機。制造商們在設法打造可滿足每件設備所有不同需要的嵌入式器件,他們多數會選擇一種平臺方法——使用一塊嵌入式主板并按需添加外設。對于中小批量,在市場上大量越來越流行的開源單板計算機(SBC)中選擇一臺的優勢更加顯著。這不僅可以省去大量NRE成本、無線監管認證和軟件啟動,還讓開發團隊可以在設計的應用程序方面快速上手,而不必對可能需要集成的各種器件進行評估、設計和原型開發。

對于許多工程團隊,IoT的一個顯著影響是,處理新項目的方式會有根本性轉變。團隊可能完全有能力從零開始設計嵌入式板,但在很緊湊的期限內交付工作設計才是最終目標。對于在創建自己的開發板前使用SBC平臺快速評估設計的人來說,訪問所有機械文件、布局和BOM都很有必要。

圖1:UDOONeo

開發人員可能考慮使用的SBC的一個代表是UDOONeo。UDOONeo分為基本版、擴展板和完整版,是一個全面的低成本系統,且均基于適合Android和Linux的Freescalei.MX6SoloX應用處理器構建。本文將著重探討Neo完整版。此Freescale器件在單一芯片上嵌入一個運行頻率為1GHz的強大單核ARM?Cortex?-A9處理器,以及一個運行頻率高達200MHz的ARMCortex-M4I/O實時協處理器。這些器件通過高速AXI總線連接在一起,能共享和使用大量硬件實施的功能,例如GPIO、UART、I2C等。開發人員通過對可編輯進行復用,可以分配外設功能的配置由哪個內核使用。

UDOONeo完整版具有1GB閃存,豐富的GPIO、串行接口、完整的Wi-Fi802.11b/g/n和BLE連接。此板配備有嵌入式9軸運動傳感器、3軸加速度計、磁力儀和陀螺儀、LVDS、HDMI、相機和音頻接口,適合許多工業設計。

從操作系統的角度看,Cortex-A9內核可以運行AndroidLollipop或UDOObuntu(14.04LTS)。Cortex-M4擁有完整堆棧Arduino環境的訪問權限,包括完整的Arduino擴展板排針,進一步使其成為一個非常靈活的平臺。

圖2:UDOONeo完整版板的主要特性

圖2中顯示為紅色的外部引腳,在GPIO模式下默認分配給Cortex-A9。因此,這些引腳可直接從文件系統(Linux、Android)控制。顯示為綠色的內部引腳由尺寸與ArduinoUNO引腳輸出相同的Cortex-M4來分配和控制。

此板由單一6–15VDC電源供電,所有的GPIO為3.3VDC。圖3的示意框圖強調了基于i.MX應用處理器的主要組成部分和接口。

Neo適合用作無頭計算平臺;或通過添加LVDS觸摸面板或HDMI設備,用作適合用戶控制的平臺。如果您的預期應用不需要運動傳感器或同樣多的內存,則可以選擇Neo的基本或擴展版本,以節省板的成本。對于許多遠程應用,無頭配置是可取的,通過SSH遠程端子或類似端子與之通信。

圖3:UDOONeo的i.MX6框圖

UDOONeo入門再簡單不過了。讓開發板運行的所有必要信息及更全面的配置和代碼示例可在Wiki-style網站上找到。如果您需要,此網站還提供全面的機械布局文件和BOM清單。

此板在供貨時未安裝任何操作系統。不論您選擇Linux還是Android,都需要容量為8GB或以上的microSD卡。從Neo的文檔網站將您選擇的操作系統下載到PC或筆記本電腦,然后執行解壓縮。您還需要將microSD卡插入卡插槽或USB適配器。訪問計算機的命令行,完整詳情見此處,并遵循指示來卸載卡及所有分區,然后再傳輸操作系統映像。完成后,請記得,您需要同步或彈出卡以正確關閉映像寫入。

現在,將microSD卡插入Neo,連接鼠標和鍵盤(通常為USB)、HDMI顯示器(建議最初就使用,以查看一切是否正常運行),然后再通電。很快,開發板上綠色和黃色LED閃爍,假設選擇了Linux,進入UDOOUbuntu桌面前屏幕上會顯示Linux企鵝Tux標志。您可以通過這一熟悉的桌面使用Linux的所有普通功能及實用工具。針對Neo配置的ArduinoIDE也會在Linux平臺中預加載,并通過桌面現成可用。下一步是連接Neo的Web控制面板。執行此操作有多種方式,可以通過讓Neo的瀏覽器指向其udooneo.localWeb服務器,或指向板自身的IP地址(如果您知道)。請見圖4。

圖4:UDOONeoWeb控制面板

可通過該控制面板充分了解Neo內部發生的情況。除了提供有關有線和無線連接狀態的信息以及傳感器和板摘要信息外,還提供配置選項,用于設置并連接到無線接入點、完成地區設置和更改顯示輸出。還提供來自加速度計、陀螺儀和磁力儀的軸與模數數據,您可以通過輕輕地四周移動開發板來測試其操作。

Web控制面板上還提供測試Arduino代碼草稿示例和寫入一些簡單的代碼的功能,請見圖5。熟悉ArduinoUNO等開發板的人,從圖5(打開引腳13)的應用示例中可以看出是個簡單的‘“”閃爍“”示例。Neo的紅色LED已連接至此引腳,因此上傳此代碼草稿會導致其閃爍。請注意,編程應用程序中的Ardublocky應用程序允許以圖形、互聯邏輯塊的方式創建Arduino代碼草稿。

圖5:ArduinoWebIDE和代碼草稿樣本

正如前文所述,Neo配備有兩組GPIO??蓮腁rduino代碼草稿訪問的GPIO稱作內部排針,最內側的排針組和從Linux內訪問的GPIO則稱為外部排針。默認情況下,所有GPIO都配置為輸入,但可配置為輸入或輸出,且在需要時可產生內核中斷。引腳復用允許MPU向外部引腳分配更專門的任務。

圖6:可從Linux內訪問的GPIO。單擊此處查看全尺寸圖像。

可以在命令行使用以下簡單命令控制GPIO引腳:

echoout>/gpio/pin19/direction–將引腳設置為輸出引腳,或

echoin>/gpio/pin19/direction–將引腳設置為輸入引腳

指定為輸出的引腳,可使用echo0>/gpio/pin19/value設置為低,零伏;

或使用echo1>/gpio/pin19/value設置為高,+3.3VDC

輸入引腳值可使用cat/gpio/pin19/value來讀取

除了從/sys/class/gpio目錄創建鏈接外,UDOObuntuLinux中預安裝的udoo-gpio-export軟件包還負責導出所有GPIO作為輸入。有關這類高級要求的更多信息,請見UDOO文檔。

Cortex-A9和Cortex-M4內核之間通過雙向虛擬化串行引腳進行通信,使用共享內存交換數據??梢栽贚inux中通過使用/dev/ttyMMC來讀取,例如minicom–D/ttyMCC;或使用Serial0對象在Arduino代碼草稿內讀取。

UDOONeo完整版板擁有三個運動傳感器。14位加速度計和16位磁力儀位于相同封裝(一種FreescaleFXOS8700CQ器件內。加速度計擁有三個可動態選擇的滿量程范圍:+/-2g、+/-4g或+/-8g。

3軸陀螺儀是FreescaleFXAS21002C。

它們被連接至I2C總線,請見圖7,并可通過任一內核訪問。

圖7:顯示傳感器和器件配置的I2C總線

在命令行,它們可以使用

echo1>/sensors/accelerometer/enable或echo1>/sensors/gyroscope/enable來啟用,并可使用cat/sensors/magnetometer/data等命令來讀取一次性的值。

嵌入式應用當然可以通過相關I2C寄存器直接從它們讀取。加速計和磁力儀使用地址0x1E,陀螺儀使用0x20。

也可以通過更高級的語言(例如Python)來訪問傳感器。在使用任何新開發板的早期,您都會希望開發板設計具備開源與社區性質。關于這方面的一個很好例子是GitHub上的Neo.GPIOPython庫,該庫提供在Cortex-A9上運行的Python應用程序的傳感器接口代碼。Python已包含在UDOObuntu發行版中,因此,使其成為在Neo上進行開發的必然選擇。使用前,您需要從GitHub下載.ZIP文件,然后將其解壓縮到將要創建Python應用程序所在的目錄。在.ZIP文件中還包括了多個代碼示例,圖8中顯示了其簡化版本。

 

圖8:讀取陀螺儀并顯示其中數據的Python程序

要在命令行運行圖8中顯示的Python代碼,您必須以root的身份運行。如果您使用的是如上所述的UDOONeo,您的用戶帳戶為udooer,那么您需要按以下方式使用GyroExample.py程序。請見圖9。

echoudooer|sudo–Ssu–c‘pythonGyroExample.py’

 

圖9:GyroExample.py代碼運行的截屏

UDOONeo是全面且強大的SBC,可以用作工業IoT應用的理想開發平臺。通過使用Neo,您可極快運行初始應用,并以最具時間和成本效益的方式讓產品上市。

標簽:

點贊

分享到:

上一篇:無位置傳感器控制方法,你掌...

下一篇:伺服運動控制方面,哪些運動...

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.siyutn.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網站簡介|會員服務|聯系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網-工業自動化與智能制造的全媒體“互聯網+”創新服務平臺

網站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業執照證書 | 不良信息舉報中心 | 粵公網安備 44030402000946號

主站蜘蛛池模板: 南投市| 阿鲁科尔沁旗| 新泰市| 巨鹿县| 汤阴县| 龙胜| 清苑县| 湘西| 金昌市| 柘荣县| 河曲县| 独山县| 治县。| 田阳县| 余庆县| 哈密市| 星座| 安泽县| 尚义县| 峨边| 侯马市| 沙雅县| 达州市| 海安县| 南开区| 富源县| 建湖县| 青神县| 吴川市| 沧州市| 海盐县| 久治县| 肇源县| 泸州市| 天水市| 延长县| 砀山县| 玉门市| 大足县| 玛多县| 凤庆县|