劉藝 瞿少成 陳堯 萬洪波 曾佳慧
摘要:為了提高小學(xué)生編程學(xué)習(xí)的便捷性和趣味性,設(shè)計(jì)并實(shí)現(xiàn)了一種面向小學(xué)生的嵌入式開發(fā)平臺(tái)。首先,以SOM-RK3399為核心,通過集成語音處理模塊、STM32控制模塊和各種外設(shè)等,完成了一種面向小學(xué)生的嵌入式開發(fā)硬件平臺(tái)。其次,搭載支持Scratch軟件的Linux系統(tǒng),構(gòu)建了基于語音識(shí)別與微機(jī)控制的操作環(huán)境。最后,基于所設(shè)計(jì)的嵌入式開發(fā)平臺(tái),設(shè)計(jì)了“語音智能點(diǎn)燈”和“Scratch編程控制風(fēng)扇”等編程案例。實(shí)驗(yàn)結(jié)果表明,平臺(tái)性能良好,操作環(huán)境簡單,編程案例可擴(kuò)展性強(qiáng),有助于小學(xué)生的編程學(xué)習(xí),具有良好的實(shí)用價(jià)值。
關(guān)鍵詞:嵌入式平臺(tái);硬件設(shè)計(jì);STM32;語音處理;小學(xué)生編程
中圖分類號(hào):TP368? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2021)10-0033-04
Abstract: In order to improve the convenience and interest of pupils to learn programming, an embedded development platform for pupils is designed and implemented. First of all, by integrating voice processing module, STM32 control module and various peripherals into SOM-RK3399, an embedded development hardware platform for pupils is designed. Secondly, Linux system that supports Scratch programming is established, and an operating environment based on voice recognition and computer control is constructed. Finally, based on the designed embedded development platform, programming routines such as “Voice Intelligent Lighting” and “Scratch Programming Control Fan” are developed. Experimental results show that this platform has good performance, simple operating environment, and strong scalability of programming cases, which is helpful for pupils' programming learning and has good popularization value.
Key words: embedded platform; hardware design; STM32; speech processing; pupils programming
1 背景
經(jīng)研究發(fā)現(xiàn),合適的編程教育平臺(tái)對(duì)小學(xué)生的編程學(xué)習(xí)尤為重要[1]。對(duì)小學(xué)生編程學(xué)習(xí)而言,一款操作簡單、性能良好、案例有趣的編程教學(xué)平臺(tái),有助于提高學(xué)生的編程興趣和動(dòng)手能力[2]。
目前市面上只針對(duì)小學(xué)生的編程教學(xué)平臺(tái)較少。在武漢市新溝橋小學(xué)的調(diào)研中發(fā)現(xiàn),編程教育設(shè)備匱乏,教學(xué)條件有限,并不能做到編程課的普及,最重要的是缺少一款合適的編程教育平臺(tái)。文獻(xiàn)[3]提出了一種基于PC機(jī)的小學(xué)生Scratch游戲化編程的教學(xué)方案,操作簡單、編程有趣,但缺乏便捷性且不能進(jìn)行實(shí)物的控制。文獻(xiàn)[4]提出了一種積木式數(shù)字電路實(shí)驗(yàn)箱,便于實(shí)物搭接與控制,但其針對(duì)大學(xué)生教育,缺乏簡單的操作環(huán)境??傮w而言,現(xiàn)針對(duì)小學(xué)生的編程教學(xué)平臺(tái)存在硬件控制缺失、環(huán)境復(fù)雜且編程案例固化等[5-8]。
針對(duì)上述問題,為了提高小學(xué)生編程學(xué)習(xí)的便捷性和趣味性,設(shè)計(jì)并實(shí)現(xiàn)了一種面向小學(xué)生的嵌入式開發(fā)平臺(tái)。該平臺(tái)以SOM-RK3399為核心,集成了語音處理模塊、STM32控制模塊和各外部接口等。系統(tǒng)支持資源豐富、容易操作的Scratch編程軟件,且通過它還可以實(shí)現(xiàn)對(duì)平臺(tái)的硬件控制?;谒鶚?gòu)建平臺(tái),還設(shè)計(jì)了“語音智能開燈”“Scratch控制電扇”等編程案例。該嵌入式開發(fā)平臺(tái)既滿足了小學(xué)生編程學(xué)習(xí)需求,又激發(fā)了小學(xué)生編程學(xué)習(xí)的興趣,且平臺(tái)性能良好、操作環(huán)境簡單、編程案例可擴(kuò)展性強(qiáng),可廣泛應(yīng)用于各地區(qū)的小學(xué)生編程教育。
2 總體設(shè)計(jì)
嵌入式開發(fā)平臺(tái)的整體設(shè)計(jì)如圖1所示,它主要包括SOM-RK3399核心板、STM32模塊、語音處理模塊和各種外設(shè)模塊。其中RK3399作為主控單元,可基于Linux操作系統(tǒng),通過Shell編程獲取語音處理模塊的數(shù)據(jù)或Scratch編程的結(jié)果,再將數(shù)據(jù)通過串口發(fā)送至STM32控制模塊,完成相應(yīng)功能的執(zhí)行。STM32模塊作為控制單元,通過串口執(zhí)行主控單元的命令,實(shí)現(xiàn)對(duì)外部設(shè)備的控制。語音處理模塊作為音頻處理單元,不僅可以完成音頻信號(hào)的輸入輸出,還支持語音識(shí)別和語音合成等功能,通過I2C協(xié)議或串口和主控單元通信。各外設(shè)接口包括USB3.0、HDMI、JTAG和SD卡槽等,保證了鍵盤、鼠標(biāo)、顯示器的連接和程序燒錄等功能。
3 硬件設(shè)計(jì)
3.1 主控單元RK3399
該平臺(tái)硬件上采用SOM-RK3399作為該開發(fā)平臺(tái)的主控單元,其是由FriendlyElec生產(chǎn)的高性能260針ARM模塊。對(duì)小學(xué)生群體而言,該主控單元具有輕便、高速等特點(diǎn),為嵌入式平臺(tái)提供了流暢的操作系統(tǒng)。
3.2? STM32模塊
STM32模塊作為平臺(tái)的控制單元,其內(nèi)部結(jié)構(gòu)如圖2所示,采用的芯片為STM32F407VGT6,該芯片有先進(jìn)的Cortex-M4內(nèi)核。通過設(shè)計(jì)串口轉(zhuǎn)Micro USB接口,提高了其通信效率[9]。
3.3 語音處理模塊
語音處理模塊負(fù)責(zé)平臺(tái)的語音輸入和輸出,以及實(shí)現(xiàn)語音識(shí)別和語音合成的功能。其內(nèi)部結(jié)構(gòu)如圖3所示,語音模塊的處理芯片型號(hào)為XFS5152CE,支持語音合成、語音識(shí)別等功能,集成的30個(gè)詞語可作為控制命令詞。此外還設(shè)計(jì)了音頻輸入和音頻輸出的物理接口。
3.4 平臺(tái)硬件實(shí)物圖
平臺(tái)硬件實(shí)物圖如圖4所示,其中MCU集成于平臺(tái)背面。各模塊及接口的位置已在圖中標(biāo)出。
4 軟件設(shè)計(jì)
4.1 語音智能點(diǎn)燈軟件設(shè)計(jì)
本平臺(tái)采用的是Linux操作系統(tǒng),基于操作系統(tǒng)通過UART協(xié)議與語音處理模塊建立通信,獲取信息后通過系統(tǒng)編程,將處理后的信號(hào)通過UART協(xié)議發(fā)送至STM32控制模塊[10]。通過以上原理,可以實(shí)現(xiàn) “語音智能點(diǎn)燈”這一教育案例。軟件設(shè)計(jì)流程如圖5所示。
依據(jù)圖5程序設(shè)計(jì)框圖開發(fā)出了基于該嵌入式開發(fā)平臺(tái)的小應(yīng)用,也證實(shí)了該平臺(tái)的三大模塊可以正常的通信及運(yùn)行。語音智能點(diǎn)燈程序的大致流程:平臺(tái)通電后,接入顯示器、麥克風(fēng)和小燈等外設(shè);打開語音模塊的串口調(diào)試助手,開啟語音識(shí)別功能;當(dāng)用戶說“開燈”時(shí),語音模塊會(huì)將語音信號(hào)轉(zhuǎn)換成文字信號(hào);將文字信號(hào)傳給核心板,由系統(tǒng)程序判斷文字信號(hào)是否為“開燈”;正確后則通過串口向STM32模塊發(fā)送指令,執(zhí)行STM32程序完成“開燈”動(dòng)作。另外,“關(guān)燈”指令亦可以實(shí)現(xiàn)關(guān)燈的操作,其他命令詞則無效。
4.2 通過Scratch編程控制風(fēng)扇
該系統(tǒng)的主要功能之一為Scratch編程。相比于僅在電腦屏幕前編程,用該平臺(tái)編程控制直觀的實(shí)物更會(huì)激發(fā)起小學(xué)生的編程興趣。通過將編程與器件結(jié)合的思路設(shè)計(jì)了Scratch編程控制風(fēng)扇這一應(yīng)用,程序設(shè)計(jì)如圖6所示。打開Scratch編程軟件和STM32串口調(diào)試軟件,在Scratch軟件中運(yùn)行已編好的 “Scratch控制風(fēng)扇”程序。操作系統(tǒng)通過調(diào)用Scratch編程的結(jié)果,經(jīng)過判斷處理后,給STM32模塊發(fā)送相應(yīng)的指令,讓STM32輸出PWM信號(hào),即可啟動(dòng)風(fēng)扇。
5 平臺(tái)應(yīng)用場(chǎng)景測(cè)試
平臺(tái)應(yīng)用測(cè)試場(chǎng)景測(cè)試分為硬件及系統(tǒng)測(cè)試和軟件功能測(cè)試。
硬件及系統(tǒng)測(cè)試:平臺(tái)上電后,分別測(cè)得SOM-RK3399核心板、語音處理模塊、STM32模塊均正常供電。啟動(dòng)操作系統(tǒng),Scratch軟件可以正常安裝運(yùn)行。
軟件測(cè)試:分別對(duì)“語音智能點(diǎn)燈”和“Scratch編程控制風(fēng)扇”這兩個(gè)應(yīng)用進(jìn)行測(cè)試。過程中設(shè)備均正常運(yùn)行,整體效果圖如圖7所示。
6 結(jié)束語
針對(duì)小學(xué)生編程教育,設(shè)計(jì)并實(shí)現(xiàn)了一種便攜式的嵌入式開發(fā)教育平臺(tái)。其中將RK3399芯片作為主控單元,STM32模塊作為控制單元,語音處理模塊作為語音信號(hào)的收發(fā)和處理單元,完成相應(yīng)功能。在嵌入式開發(fā)平臺(tái)中搭載支持Scratch軟件的操作環(huán)境,并設(shè)計(jì)了兩個(gè)可擴(kuò)展性較強(qiáng)的編程教學(xué)案例。實(shí)驗(yàn)結(jié)果表明,所搭建嵌入式開發(fā)平臺(tái)操作方便、外設(shè)可控性靈活;編程環(huán)境簡單,可應(yīng)對(duì)小學(xué)生編程學(xué)習(xí)的各種需求;編程教學(xué)案例具有豐富的思維邏輯,且體現(xiàn)了該平臺(tái)較強(qiáng)的實(shí)用性和趣味性。在后續(xù)工作中,可以對(duì)硬件排版及外設(shè)接口進(jìn)行調(diào)整,提高美觀性和舒適性;軟件方面,可以開發(fā)出更多的應(yīng)用功能和相關(guān)案例,來豐富小學(xué)生的編程趣味,提高其使用體驗(yàn)。
參考文獻(xiàn):
[1] 李曉冬,李淑明.“互聯(lián)網(wǎng) +”背景下基礎(chǔ)電路實(shí)驗(yàn)教學(xué)改革研究[J].教育現(xiàn)代化,2017,4(46):41-42.
[2] 趙蘇亞.小學(xué)人工智能教育機(jī)器人的設(shè)計(jì)與應(yīng)用研究[D].武漢:華中師范大學(xué),2019.
[3] 胡慧廷,徐曉梅.Scratch軟件在中學(xué)物理教學(xué)中的應(yīng)用初探[J].物理通報(bào),2016,35(3):93-100.
[4] 熊秋娥,葛越.Scratch游戲化編程培養(yǎng)小學(xué)生計(jì)算思維的實(shí)證研究[J].基礎(chǔ)教育,2019,16(6):27-35.
[5] 張翠翠,張世嬌,張鵬輝,等.積木式多層級(jí)數(shù)字電路實(shí)驗(yàn)箱[J].實(shí)驗(yàn)技術(shù)與管理,2019,36(3):98-102.
[6] 劉瑞濤.單片機(jī)實(shí)驗(yàn)箱設(shè)計(jì)與制作[J].電子制作,2014(4):12,51.
[7] 陳凱,魏文博,鄧明.嵌入式系統(tǒng)教學(xué)實(shí)驗(yàn)板開板[J].實(shí)驗(yàn)技術(shù)與管理,2016,33(1):82-85,95.
[8] 張昊,蔣毅.面向嵌入式機(jī)器視覺的圖編程式算法開發(fā)平臺(tái)設(shè)計(jì)[J].電子測(cè)量技術(shù),2020, 43(9):171-176.
[9] 朱向慶,黎東濤,蘇超益,等.適合于項(xiàng)目教學(xué)法的三合一單片機(jī)實(shí)驗(yàn)箱設(shè)計(jì)[J].實(shí)驗(yàn)技術(shù)與管理,2013,30(7):55-59.
[10] Xu Chunshu.Design and Implementation of Intelligent Greenhouse System based on STM32[J].International Core Journal of Engineering,2020,6(7).
[11] 林國偉.單片機(jī)實(shí)驗(yàn)教學(xué)改革初探[J].電腦知識(shí)與技術(shù),2017,13(14):125-126.
【通聯(lián)編輯:謝媛媛】