屈鳴楊
摘要:光污染會對人類的身體健康造成極大危害,城市夜空亮度的提高對天文觀測、城市夜間環(huán)境保護以及能源利用等都會帶來負面影響。光污染是環(huán)境治理工作的重要內(nèi)容,光污染主要來自人工光源,光源的強度決定光污染的大小。本文提出了利用光照度傳感器BH1750制作光污染檢測儀,用來探測環(huán)境中光強的大小。該檢測儀系統(tǒng)包括對光強的檢測、當前環(huán)境光強的顯示、測試地點經(jīng)緯度、海拔高度、測試時間等參數(shù)的測量和自動記錄到SD卡并可以設(shè)定報警功能。通過Arduino的控制功能,實現(xiàn)了光強的實時顯示、記錄功能的自動化,對光污染監(jiān)測與控制起到重要作用。
關(guān)鍵詞:BH1750;Arduino;光污染;天空亮度
一、引言
天空發(fā)亮是城市光污染的主要表現(xiàn)形式之一,近年來,城市夜間照明直接射向和經(jīng)地面反射到天空中的光,在一定程度上,提高了夜間天空的亮度,因此也嚴重破壞了天文愛好者及普通市民對城市星空和銀河的遙望和觀察。天空發(fā)亮是來自大氣中的氣體分子和氣溶膠的散射(包括可見和非可見)光線,反射在天文觀測方向形成的夜空光亮現(xiàn)象。它主要是由自然天空光和人為天空光兩部分造成的。其中自然天空光是指天體和地球大氣上層輻射過程引起的那部分天空輝光,它包括五個方面:月光、高層大氣輝光、黃道光、散射的星光、星際塵埃和氣體等引起的背景光;人為天空光主要是指城市的人工光在塵埃、水蒸氣或其他懸浮粒子的反射或擴散作用下進入大氣層, 而導致的城市上空發(fā)亮。然而深藍夜空、繁星閃爍作為夜間環(huán)境的重要組成,是自然界留給人類的最寶貴生態(tài)資源之一,是全球生態(tài)和人類生存環(huán)境不可或缺的一部分。所以目前有越來越多的學者和專家提倡要“凈化”夜空,對星空進行保護,盡量提高城市夜天空的等級。
二、光污染的相關(guān)知識
隨著城市建設(shè)的飛速發(fā)展,伴隨而來的環(huán)境污染日益加劇,除水污染、大氣污染、噪聲污染、固體廢棄物污染外,光污染被認為是第五類重要污染源。光污染最早是由國際天文界指出,認為光污染是城市室外燈光照明使天光很亮而難以進行星空觀測,這種狹義的光污染僅僅是指可見光。廣義的光污染指對人類生活和生產(chǎn)環(huán)境造成不良影響現(xiàn)象的一切光輻射,包括可見光、紅外線和紫外線。
(一)光污染的分類及其危害
一般將光污染分為三類,即白亮污染、人工白晝和彩光污染。
1.白亮污染是指陽光照射強烈時,城市里建筑物的玻璃幕墻、釉面磚墻、磨光大理石和各種涂料等裝飾反射光線,明晃白亮,眩眼奪目。長時間在白色光亮污染環(huán)境下工作和生活的人,視網(wǎng)膜和虹膜都會受到程度不同的損害,視力急劇下降,白內(nèi)障的發(fā)病率高達45%,它還使人頭昏心煩,甚至發(fā)生失眠、食欲下降、情緒低落、身體乏力等類似神經(jīng)衰弱的癥狀。尤其在夏天,玻璃幕墻強烈的反射光進入附近居民樓房內(nèi),使室溫平均升高4~6攝氏度,影響人的正常的工作和生活。有些玻璃幕墻是半圓形的,反射光匯聚還容易引起火災(zāi)。烈日下駕車行駛的司機會出其不意地遭到玻璃幕墻反射光的突然襲擊,眼睛受到強烈刺激,很容易誘發(fā)車禍。
2.人工白晝是指在夜間,商場、酒店的廣告燈、霓虹燈閃爍奪目,令人眼花繚亂,有些強光甚至直沖云霄,使得夜晚如同白天一樣,即所謂的人工白晝。這樣的環(huán)境會擾亂人體正常的生物鐘,導致人的白天工作效率低下。人工白晝還會傷害鳥類和昆蟲,強光可能破壞昆蟲在夜間的正常繁殖過程。
3.彩光污染是指舞廳、夜總會安裝的黑光燈、旋轉(zhuǎn)燈、熒光燈以及閃爍的彩色光源構(gòu)成的污染。人如果長期接受這種照射,可誘發(fā)流鼻血、脫牙、白內(nèi)障,甚至導致白血病和其他癌變。
三、光污染檢測系統(tǒng)
(一)系統(tǒng)硬件設(shè)計
本測試系統(tǒng)以目前流行的Arduino控制計算機為核心,整合各種外圍模塊組成的。在應(yīng)用設(shè)計初期,把這款裝置分成了兩大部分來進行設(shè)計,第一部分是基于Arduino控制計算機為核心的硬件,體積小,可以安裝在自行車、汽車等各種車輛上,負責收集和記錄當前天空光強、測試地點經(jīng)緯度、海拔高度、測試時間等數(shù)據(jù),并通過LCD顯示屏實時顯示時速等信息。第二部分則是分析統(tǒng)計的數(shù)據(jù)(研究尚在進行中),由于受Arduino的SRAM和頻率的限制,不太適合做數(shù)據(jù)分析,因此把這部分功能分拆開來,設(shè)計成由桌面計算機系統(tǒng)來完成—Arduino記錄的數(shù)據(jù)上傳到計算機系統(tǒng)上后進行分析并繪制圖表。第二部分系統(tǒng),初步設(shè)計成了一個Web2.0的應(yīng)用。這樣就可以方便地將統(tǒng)計的結(jié)果進行分享和發(fā)布。
在本測試系統(tǒng)中,基于Arduino的硬件系統(tǒng)部分,主要由以下幾個模塊來構(gòu)成:
(1)Arduino控制計算機,測試系統(tǒng)的核心。
(2)電源模塊,為所有硬件提供電源。
(3)GPS模塊,提供GPS定位信息,以得到位置數(shù)據(jù)、速度數(shù)據(jù)、高度數(shù)據(jù)。
(4)LCD模塊,實時顯示騎行數(shù)據(jù)。
(5)SD/TF卡存儲模塊,儲存位置數(shù)據(jù)、速度數(shù)據(jù)、高度數(shù)據(jù)、天空亮度數(shù)據(jù)、時間數(shù)據(jù)等。
(6)光照度模塊,測量天空亮度數(shù)據(jù)。
各個模塊系統(tǒng)連接框圖如圖1所示。
該應(yīng)用設(shè)備使用的Arduino端口的規(guī)劃表如下:
PIN 0 (RX) GPS模塊TX
PIN 1 (TX) GPS模塊RX
PIN 2
PIN 3
PIN 4
PIN 5 Nokia 5110 LCD模塊 SCK
PIN 6 Nokia 5110 LCD模塊 MOSI
PIN 7 Nokia 5110 LCD模塊 A0
PIN 8 Nokia 5110 LCD模塊 Reset
PIN 9
PIN 10 TF卡模塊 片選SS
PIN 11 TF卡模塊 MOSI
PIN 12 TF卡模塊 MISO
PIN 13 TF卡模塊 SCK
其中,電源模塊由7.4V,1000毫安時鋰電池作為電源,經(jīng)過DC/DC模塊,轉(zhuǎn)換成+3.3V和+5V兩路電壓供Arduino控制計算機和外圍各個功能模塊使用。
GPS模塊和Arduino控制計算機通過標準硬件串口進行連接,通訊波特率采用標準9600。
在這里使用硬件Serial來作為GPS NMEA信號輸入而不使用SoftSerial的好處是:避免SoftSerial的兼容問題;節(jié)省Flash的空間,減少SRAM使用。
LCD模塊和Arduino控制計算機通過非標準的SPI通信協(xié)議通訊。因此在編程時不能夠使用標準硬件SPI庫,而需要使用Soft SPI來驅(qū)動。
SD/TF卡存儲模塊是工作在3.3V的電壓下的,采用標準SPI接口和Arduino控制計算機連接。在Arduino控制計算機上,SPI使用引腳10(SS)、11(MOSI)、12(MISO)and13(SCK)。
光照度模塊和Arduino控制計算機通過I2C總線通訊。在大多數(shù)Arduino控制計算機上SDA(data line)使用模擬口4,SCL(clock line)使用模擬口5。
各模塊介紹如下:
ArduinoUNO:
ArduinoUNO(R3版本)采用的微處理器是ATmega328. 該版本包括14個數(shù)字輸入輸出IO、6個模擬輸入IO、16MHZ的晶體、USB接口、電源接口、燒錄頭、復位按鈕等。相對于其他版本,R3版本的不同之處是:
(1)增加I2C總線接口:SDA,SCL。
(2)增強的復位線路。
(3)使用16U2替代以前的8U2。
R3版本的主要特征包括:
(1)微處理器:ATmega328。
(2)操作電壓:5V。
(3)輸入電壓:7V到12V。
(4)數(shù)字雙向IO:14個(其中6個提供PWM輸出)。
(5)模擬輸入腳:6個。
(6)每個IO腳的最大輸出電流:40mA。
(7)提供的3V3最帶電流:50mA。
(8)Flash大?。?2K字節(jié)。
(9)SRAM大小:2K字節(jié)。
(10)EEPROM大小:1K字節(jié)。
(11)時鐘頻率:16M。
GPS模塊:
ATK-NEO-6M-V12是一款高性能GPS定位模塊。該模塊采用U-BLOX NEO-6M模組,模塊自帶高性能無源陶瓷天線(無需再購買昂貴的有源天線了),并自帶可充電后備電池(以支持溫啟動或熱啟動,后備電池在主電源斷電后,可以維持半小時左右的GPS接收數(shù)據(jù)保存)。
模塊通過串口與外部系統(tǒng)連接,串口波特率支持4800、9600、38400(默認)、57600等不同速率,兼容5V/3.3V單片機系統(tǒng),可以非常方便地與您的產(chǎn)品進行連接。
ATK-NEO-6M GPS模塊同外部設(shè)備的通信接口采用UART(串口)方式,輸出的GPS定位數(shù)據(jù)采用NMEA-0183協(xié)議(默認),控制協(xié)議為UBX協(xié)議。
5110LCD模塊:
5110LCD模塊是NOKIA公司生產(chǎn)的可用于其5110、6150,6100等系列移動電話的液晶顯示模塊,國內(nèi)廠家也生產(chǎn)有類似的兼容產(chǎn)品。該產(chǎn)品除應(yīng)用于移動電話外,也可廣泛應(yīng)用于各類便攜式設(shè)備的顯示系統(tǒng)。與其他類型的產(chǎn)品相比,該模塊具有以下特點:
(1)84x48的點陣LCD,可以顯示4行漢字。
(2)采用串行接口與主處理器進行通信,接口信號線數(shù)量大幅度減少,包括電源地在內(nèi)的信號線僅有9條。支持多種串行通信協(xié)議(如AVR單片機的SPI、MCS51的串口模式0等),傳輸速率高達4Mbps,可全速寫入顯示數(shù)據(jù),無等待時間。
(3)可通過導電膠連接模塊與印制板,而不用連接電纜,用模塊上的金屬鉤可將模塊固定到印制板上,因而非常便于安裝和更換。
(4)LCD控制器/驅(qū)動器芯片已綁定到LCD晶片上,模塊的體積很小。
(5)采用低電壓供電,正常顯示時的工作電流在200μA以下,且具有掉電模式。
光照度模塊:
16位數(shù)字輸出型環(huán)境光強度傳感器集成電路BH1750FVI是一種用于兩線式串行總線接口的數(shù)字型光強度傳感器集成電路。這種集成電路可以根據(jù)搜集的光線強度數(shù)據(jù)來調(diào)整液晶或者鍵盤背景燈的亮度。利用它的高分辨率可以探測較大范圍的光強度變化。產(chǎn)品特點如下:
(1)支持I2C BUS接口(f/s Mode Support)。
(2)接近視覺靈敏度的光譜靈敏度特性(峰值靈敏度波長典型值:560nm)。
(3)輸出對應(yīng)亮度的數(shù)字值。
(4)對應(yīng)廣泛的輸入光范圍(相當于1-65535lx)。
(5)通過降低功率功能實現(xiàn)低電流化。
(6)通過50Hz/60Hz除光噪音功能實現(xiàn)穩(wěn)定的測定。
(7)支持1.8V邏輯輸入接口。
(8)無需其他外部件。
(9)光源依賴性弱(白熾燈、熒光燈、鹵素燈、白光LED,日光燈)。
(10)有兩種可選的I2C slave地址。
(11)可調(diào)的測量結(jié)果影響較大的因素為光入口大小。
(12)使用這種功能能計算1.1 lx到100000 lx馬克斯/分鐘的范圍。
(13)最小誤差變動在±20%。
(14)受紅外線影響很小。
(二)系統(tǒng)軟件設(shè)計
在這個項目中,GPS模塊的驅(qū)動使用了TinyGPS庫,LCD顯示則使用了u8glib,SD卡模塊驅(qū)動使用了SD庫。當然,為了節(jié)省SRAM,對庫也進行了修改。例如,對TinyGPS的cardinal函數(shù)進行了修改,將數(shù)組使用PROGMEM進行存儲,節(jié)省SRAM的空間。
整個系統(tǒng)的代碼邏輯其實很簡單。初始化完成后,每秒檢查一次GPS信號,如果信號正常則更新信息并在LCD屏幕更新顯示的實時數(shù)據(jù)。由于事后用于分析的數(shù)據(jù)不需要精確到每秒這樣的級別,因此設(shè)定每5秒判斷一次,如果當前位置和5秒前相比發(fā)生了一定的位移量則將數(shù)據(jù)記錄到SD卡,以供分析。
為了簡化數(shù)據(jù)存儲的方式,數(shù)據(jù)以類似CSV的格式存儲在TF卡上,文件名則為開始記錄的日期,每一段數(shù)據(jù)以數(shù)據(jù)格式的版本號開始,每一行都是一筆數(shù)據(jù)。
格式如下:
日期,時間,連接的衛(wèi)星個數(shù),緯度,經(jīng)度,海拔高度,時速,行駛方向,光照度。
程序流程如圖2所示,計算機開始運行后進入void setup(){…}程序段對系統(tǒng)硬件進行初始化。開啟每秒一次的定時中斷計數(shù)器,對串口、LCD顯示器和I2C BUS進行初始化。
初始化完成后進入GPS數(shù)據(jù)搜索模式,同時在LCD顯示屏顯示當前光照度數(shù)據(jù)。程序?qū)⒁恢边\行在該搜索模式,直到計算機獲得當前經(jīng)緯度、高度、速度等衛(wèi)星定位數(shù)據(jù)。
如果完成尋星工作,程序就將當前時間、當前速度、衛(wèi)星數(shù)量、移動方向、經(jīng)緯度、海拔高度、當前光照度等數(shù)據(jù)按照每秒一次的頻率刷新顯示到LCD顯示器。同時按照每5秒一次的頻率將以上數(shù)據(jù)寫到SD卡保存,以便過后對數(shù)據(jù)進行分析計算。
(三)系統(tǒng)測試
系統(tǒng)調(diào)試經(jīng)過三個階段。第一階段完成利用面包板搭建測試環(huán)境,初步調(diào)試軟硬件(如圖3)。在這個階段主要是通過軟硬件協(xié)同驗證硬件模塊之間的連接關(guān)系是否合理。通過各個測試程序的下載運行,保證硬件模塊能夠正常工作,模塊之間連接關(guān)系正確。
初步調(diào)試正常以后就將所有硬件模塊安裝到儀器盒里面。這時候要考慮各個模塊的安裝位置是否合理,連接是否方便,外部接口位置是否合適等機械方面的問題。然后就是按照設(shè)計好的位置在儀器盒的四周進行開孔等操作。
為了實現(xiàn)光照度傳感器的遮光等功能,筆者用CRE2.0軟件設(shè)計了一個孔攔結(jié)構(gòu),并利用學校工程實驗室的3D打印機打印出來(如圖4)。
以上工作全部完成后,接下來就是做軟件的撰寫和調(diào)試。軟件的調(diào)試采用模塊化調(diào)試方式。先測試各個模塊能夠正常工作,然后對各個模塊進行組裝調(diào)試。調(diào)試程序大約需要4個周六、周日的時間。
下面是調(diào)試完成后的裝置外觀圖(如圖5)。
當衛(wèi)星信號正常時,進入正常測試界面如圖6所示。
四、結(jié)論
通過初步測試盒驗證,本裝置能夠較好地滿足天空光污染數(shù)據(jù)的自動化測量和記錄,為天文觀測和環(huán)境污染研究的專業(yè)人士提供一種可靠便捷的測試方法和手段,具有一定的先進性。
五、致謝
在本項目的研究過程中,江蘇省天一中學“南京理工大學﹒天一中學機器人創(chuàng)新實驗室”的鄧一波老師放棄了大量的休息時間來開放實驗室,提供盡可能的方便,并在研究過程中提出了很多意見和建議。在此,對他表示衷心感謝!