一種新型太陽能熱水控制器的設(shè)計(jì)與實(shí)現(xiàn)
發(fā)布時(shí)間:2021-08-26 09:03
針對傳統(tǒng)太陽能熱水控制器交互性差、拓展性差等問題,利用Cortex-A9開發(fā)平臺,結(jié)合Android系統(tǒng)的優(yōu)勢,研究并設(shè)計(jì)出了一種基于RS485總線結(jié)構(gòu)的新型控制器,然后闡述了該控制器的硬件結(jié)構(gòu),完成了系統(tǒng)裁剪與驅(qū)動移植,并開發(fā)出基于Android系統(tǒng)的監(jiān)控軟件。該控制器具有功能豐富、交互界面友好、靈活、拓展性強(qiáng)的特點(diǎn),實(shí)現(xiàn)了與服務(wù)器的遠(yuǎn)程數(shù)據(jù)傳輸。測試結(jié)果表明,該控制器運(yùn)行穩(wěn)定,可滿足設(shè)計(jì)需求。
【文章來源】:太陽能. 2020,(02)
【文章頁數(shù)】:6 頁
【部分圖文】:
控制器系統(tǒng)硬件結(jié)構(gòu)及其他設(shè)備框圖
內(nèi)核方面的裁剪借助基于文本菜單的配置工具M(jìn)enuconfig,如圖2所示。僅選擇與本工程相關(guān)的驅(qū)動,最終生成“.config”文件。配置完成后,用交叉編譯工具arm-2009q3編譯,生成內(nèi)核鏡像。Android上層的裁剪主要是刪除不必要的系統(tǒng)服務(wù),以及修改系統(tǒng)啟動時(shí)讀取的配置文件“init.rc”,去除與本工程無關(guān)的服務(wù)。詳細(xì)實(shí)現(xiàn)過程不再贅述。
Android系統(tǒng)是基于Linux內(nèi)核的,通過裁剪保留了工程必須的內(nèi)核驅(qū)動。但是對于RS485通信模塊和報(bào)警模塊這種非標(biāo)準(zhǔn)設(shè)備,Android系統(tǒng)上層未對其支持,因此,不僅要在Linux內(nèi)核中添加驅(qū)動模塊,還必須在Android系統(tǒng)上層添加對應(yīng)的支持[6]。由于RS485通信模塊與報(bào)警模塊的驅(qū)動實(shí)現(xiàn)過程類似,這里只針對Android系統(tǒng)的RS485通信模塊驅(qū)動程序進(jìn)行架構(gòu)分析[7],如圖3所示。太陽能熱水控制器軟件運(yùn)行在Android系統(tǒng)的Dalvik虛擬機(jī)上,采用Java語言編寫,可以看到,其實(shí)現(xiàn)與硬件無關(guān)。Linux內(nèi)核中的RS485驅(qū)動僅提供少量的接口,具體是在Android系統(tǒng)提供的硬件抽象層實(shí)現(xiàn),是以Linux共享庫(*.so)的形式存在,采用C/C++語言編寫。Dalvik虛擬機(jī)支持了Java語言的JNI(Java Native Interface)特性,使應(yīng)用層Java代碼通過虛擬機(jī)調(diào)用本地共享庫,充當(dāng)Java與C/C++之間的橋梁[8]。
【參考文獻(xiàn)】:
期刊論文
[1]城鎮(zhèn)住宅太陽能熱水系統(tǒng)調(diào)研分析[J]. 徐尤錦,李崢嶸,黃俊鵬,陳講運(yùn). 太陽能. 2019(01)
[2]太陽能熱水工程數(shù)據(jù)采集系統(tǒng)的研制[J]. 許向東,黃國輝,姜周曙,葉曉平,李培遠(yuǎn),游張平. 測控技術(shù). 2017(03)
[3]中國太陽能熱利用技術(shù)“十二五”進(jìn)展與“十三五”展望[J]. 鄭瑞澄,王敏,李博佳,張昕宇,何濤. 太陽能. 2016(05)
[4]軟件測試方法的研究與應(yīng)用[J]. 武昭宇,張?jiān)虑?閻華. 太原理工大學(xué)學(xué)報(bào). 2016(03)
[5]居民生活熱水需求與用能方式調(diào)查研究[J]. 王珊珊,郝斌,陳希琳,彭琛. 給水排水. 2015(11)
[6]Android系統(tǒng)非標(biāo)準(zhǔn)設(shè)備驅(qū)動程序設(shè)計(jì)[J]. 孟小華,黃宗軒. 微型機(jī)與應(yīng)用. 2011(14)
[7]智能化太陽能熱水器控制器設(shè)計(jì)[J]. 霍振宇,馬永強(qiáng),楊珠. 煤炭技術(shù). 2011(07)
碩士論文
[1]基于物聯(lián)網(wǎng)的太陽能熱水器遠(yuǎn)程監(jiān)控系統(tǒng)研究[D]. 李克強(qiáng).齊魯工業(yè)大學(xué) 2017
本文編號:3363953
【文章來源】:太陽能. 2020,(02)
【文章頁數(shù)】:6 頁
【部分圖文】:
控制器系統(tǒng)硬件結(jié)構(gòu)及其他設(shè)備框圖
內(nèi)核方面的裁剪借助基于文本菜單的配置工具M(jìn)enuconfig,如圖2所示。僅選擇與本工程相關(guān)的驅(qū)動,最終生成“.config”文件。配置完成后,用交叉編譯工具arm-2009q3編譯,生成內(nèi)核鏡像。Android上層的裁剪主要是刪除不必要的系統(tǒng)服務(wù),以及修改系統(tǒng)啟動時(shí)讀取的配置文件“init.rc”,去除與本工程無關(guān)的服務(wù)。詳細(xì)實(shí)現(xiàn)過程不再贅述。
Android系統(tǒng)是基于Linux內(nèi)核的,通過裁剪保留了工程必須的內(nèi)核驅(qū)動。但是對于RS485通信模塊和報(bào)警模塊這種非標(biāo)準(zhǔn)設(shè)備,Android系統(tǒng)上層未對其支持,因此,不僅要在Linux內(nèi)核中添加驅(qū)動模塊,還必須在Android系統(tǒng)上層添加對應(yīng)的支持[6]。由于RS485通信模塊與報(bào)警模塊的驅(qū)動實(shí)現(xiàn)過程類似,這里只針對Android系統(tǒng)的RS485通信模塊驅(qū)動程序進(jìn)行架構(gòu)分析[7],如圖3所示。太陽能熱水控制器軟件運(yùn)行在Android系統(tǒng)的Dalvik虛擬機(jī)上,采用Java語言編寫,可以看到,其實(shí)現(xiàn)與硬件無關(guān)。Linux內(nèi)核中的RS485驅(qū)動僅提供少量的接口,具體是在Android系統(tǒng)提供的硬件抽象層實(shí)現(xiàn),是以Linux共享庫(*.so)的形式存在,采用C/C++語言編寫。Dalvik虛擬機(jī)支持了Java語言的JNI(Java Native Interface)特性,使應(yīng)用層Java代碼通過虛擬機(jī)調(diào)用本地共享庫,充當(dāng)Java與C/C++之間的橋梁[8]。
【參考文獻(xiàn)】:
期刊論文
[1]城鎮(zhèn)住宅太陽能熱水系統(tǒng)調(diào)研分析[J]. 徐尤錦,李崢嶸,黃俊鵬,陳講運(yùn). 太陽能. 2019(01)
[2]太陽能熱水工程數(shù)據(jù)采集系統(tǒng)的研制[J]. 許向東,黃國輝,姜周曙,葉曉平,李培遠(yuǎn),游張平. 測控技術(shù). 2017(03)
[3]中國太陽能熱利用技術(shù)“十二五”進(jìn)展與“十三五”展望[J]. 鄭瑞澄,王敏,李博佳,張昕宇,何濤. 太陽能. 2016(05)
[4]軟件測試方法的研究與應(yīng)用[J]. 武昭宇,張?jiān)虑?閻華. 太原理工大學(xué)學(xué)報(bào). 2016(03)
[5]居民生活熱水需求與用能方式調(diào)查研究[J]. 王珊珊,郝斌,陳希琳,彭琛. 給水排水. 2015(11)
[6]Android系統(tǒng)非標(biāo)準(zhǔn)設(shè)備驅(qū)動程序設(shè)計(jì)[J]. 孟小華,黃宗軒. 微型機(jī)與應(yīng)用. 2011(14)
[7]智能化太陽能熱水器控制器設(shè)計(jì)[J]. 霍振宇,馬永強(qiáng),楊珠. 煤炭技術(shù). 2011(07)
碩士論文
[1]基于物聯(lián)網(wǎng)的太陽能熱水器遠(yuǎn)程監(jiān)控系統(tǒng)研究[D]. 李克強(qiáng).齊魯工業(yè)大學(xué) 2017
本文編號:3363953
本文鏈接:http://sikaile.net/projectlw/xnylw/3363953.html
最近更新
教材專著