91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

JavaScript與物聯(lián)網(wǎng)

eeDesigner ? 2017-10-20 17:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

物聯(lián)網(wǎng)(Internet of Things,IoT)一詞,是由美國(guó)麻省理工學(xué)院Auto-ID中心主任Kevin Ashton,于1999年進(jìn)行RFID研究時(shí)所提出的概念。物聯(lián)網(wǎng)是指為每個(gè)東西,包括一般物品(例如:超商以及它所販?zhǔn)鄣乃?a target="_blank">商品)、傳感器,甚至人類和動(dòng)物,都標(biāo)上唯一識(shí)別碼(Unique Identifier,如:條形碼、IP地址、身份證號(hào)碼等),彼此之間通過約定好的通信協(xié)議,利用互聯(lián)網(wǎng)相連、分享數(shù)據(jù)。

物聯(lián)網(wǎng)不僅是兩個(gè)設(shè)備之間的互相連接,它們通常也連接到負(fù)責(zé)收集數(shù)據(jù),以及協(xié)調(diào)這些設(shè)備運(yùn)作的(云)服務(wù)器。此外,控制器、傳感器等物聯(lián)網(wǎng)設(shè)備,通常也都要具備讓用戶操作和監(jiān)控的界面,無論是網(wǎng)頁還是App形式。下面是物聯(lián)網(wǎng)的基本架構(gòu):

可連接互聯(lián)網(wǎng)設(shè)備的數(shù)量,在2011年時(shí)超越地球總?cè)丝跀?shù)。這些設(shè)備包含消費(fèi)性電子產(chǎn)品、工廠機(jī)器、家電、醫(yī)療器材、傳感器等。以往,數(shù)據(jù)通過人力輸入到計(jì)算機(jī)(例如,抄錄水、電、燃?xì)庥昧浚F(xiàn)在多半則是由設(shè)備直接提供數(shù)據(jù)給另一個(gè)設(shè)備。

舉例而言,你的手機(jī)認(rèn)得“你”和“家人”,當(dāng)你的小孩抵達(dá)校園時(shí),“學(xué)?!睍?huì)自動(dòng)發(fā)送短信通知;手機(jī)可以記錄你的運(yùn)動(dòng)習(xí)慣并協(xié)調(diào)智能型溫控器,在你到家之前調(diào)整好室溫:若是下班快抵達(dá)家門時(shí),手機(jī)可以自動(dòng)過濾公司電話,并通知住家的房子自動(dòng)打開車庫門。宅配的貨車可實(shí)時(shí)更新網(wǎng)購商品位置和預(yù)計(jì)送達(dá)時(shí)間,也能讀取送貨路線的交通狀況,并適時(shí)提醒或規(guī)劃避開車流量大的路線。

所以,機(jī)器和機(jī)器相互連接、協(xié)同合作(Machine to Machine, M2M),就能完成代理人或者貼身秘書的工作。隨著寬帶網(wǎng)絡(luò)基礎(chǔ)建設(shè)的普及、各式云服務(wù)推陳出新,加上傳感器、通信芯片和單片機(jī)技術(shù)的提升與價(jià)格下降,使得“物聯(lián)網(wǎng)”從概念融入真實(shí)的日常生活中。

0.1 JavaScript與物聯(lián)網(wǎng)

許多嵌入式系統(tǒng)采用的是運(yùn)算性能、存儲(chǔ)器容量相對(duì)較低的8位單片機(jī),它們也通常采用專屬的庫和開發(fā)工具,并且多采用C/C++語言開發(fā)。就像電視機(jī)、空調(diào)等家電,逐漸脫離“單獨(dú)”運(yùn)作的時(shí)代,為了搶食物聯(lián)網(wǎng)市場(chǎng)大餅,原本軟硬件較為封閉的嵌入式控制器,也開始擁抱開放的互聯(lián)網(wǎng)和Web標(biāo)準(zhǔn)。

這股風(fēng)潮,也將原本稱霸Web前臺(tái)技術(shù)的JavaScript(注:在網(wǎng)頁上提供交互功能的編程語言)順勢(shì)帶入物聯(lián)網(wǎng)。例如,Pebble智能表提供的開發(fā)工具PebbleKit和Pebble.js,讓你用JavaScript來開發(fā)手表的App。又如,2014年被Google收購的Nest Labs公司推出的Nest溫度控制器,也有供JavaScript代碼使用的API(Application Interface,應(yīng)用程序接口,也就是提供讓外部程序控制的渠道),因此,程序員可用JavaScript讀取或調(diào)控Nest溫控器的狀態(tài)?;旧?,凡具備Web瀏覽器的設(shè)備,就能運(yùn)行JavaScript。

在瀏覽器內(nèi)操作的應(yīng)用(像YouTube, Google Docs和Office 365),叫作Web應(yīng)用。Web應(yīng)用分成前臺(tái)和后臺(tái)(服務(wù)器端)兩大部分,以電子郵件服務(wù)網(wǎng)站(如:QQ和Gmail)為例,顯示在瀏覽器里電子郵件操作的界面(網(wǎng)頁)是前臺(tái),提供用戶填寫信件的界面,負(fù)責(zé)發(fā)送郵件的則是后臺(tái)。網(wǎng)頁界面的架構(gòu)通過HTML定義,外觀樣式由CSS定義,動(dòng)態(tài)改變字體樣式、大小、插入表情圖案等交互功能則是用JavaScript寫成的。

JavaScript語言具有下列幾個(gè)特色:

所有瀏覽器都支持,也是網(wǎng)頁的標(biāo)準(zhǔn)語言。

語法簡(jiǎn)單,學(xué)習(xí)門檻低,容易入門。

不需要特殊的開發(fā)工具,在計(jì)算機(jī)、平板電腦或手機(jī)上,用文本編輯軟件和瀏覽器就能開發(fā)和調(diào)試JavaScript代碼。

有為數(shù)眾多的開發(fā)者,以及書籍、網(wǎng)絡(luò)等參考資源和示例。

用于服務(wù)器和單片機(jī)的JavaScript

當(dāng)QQ用戶單擊“發(fā)送”按鈕之后,信件內(nèi)容會(huì)從瀏覽器傳給QQ服務(wù)器,而在服務(wù)器上運(yùn)行的代碼,將負(fù)責(zé)寄送信件和保存郵件等功能。不像瀏覽器,在服務(wù)器端運(yùn)行的編程語言并沒有統(tǒng)一,常見的語言和運(yùn)行環(huán)境有PHP、ASP.NET、Ruby等。

其實(shí),服務(wù)器端程序也能用JavaScript語言開發(fā)??稍跒g覽器之外獨(dú)立運(yùn)行Ja?vaScript代碼的Node.js于2009年問世,并相繼被沃爾瑪、PayPal(在線支付款項(xiàng)系統(tǒng))和Netflix(網(wǎng)飛,在線電視)等大型企業(yè)所采納,用來建置可應(yīng)付購物旺季高流量的高性能網(wǎng)站后臺(tái)程序。

Node.js并不是第一個(gè)可在瀏覽器外運(yùn)行的JavaScript環(huán)境,但它是最成功的一個(gè)。

Node.js能夠在Windows、Mac OS X以及Linux系統(tǒng)中運(yùn)行;不只是個(gè)人計(jì)算機(jī),風(fēng)靡創(chuàng)客的Raspberry Pi(以下稱“樹莓派”)、BeagleBone Black(http://beagleboard.org/BLACK),以及9美元的開源微電腦C.H.I.P.(https://getchip.com/),還有基于x86處理器架構(gòu)的Intel Galileo控制板也都能運(yùn)行Node.js。

某些采用32位處理器的控制板,更直接把JavaScript語言當(dāng)作“母語”,例如Espruino(http://espruino.com/)和Tessel 2(http://tessel.io/),而三星電子公司在2015年5月發(fā)表了一個(gè)“瘦身”版的JavaScript語言,叫作JerryScript(https://samsung.github.io/jerryscript/),可運(yùn)用在僅有64KB內(nèi)存的單片機(jī)上。換句話說,在這些控制板上讀取和設(shè)置I/O腳,都用JavaScript。因此,從前臺(tái)網(wǎng)頁、后臺(tái)服務(wù)器,到單片機(jī)和傳感器終端,都能用相同的JavaScript語言編寫;學(xué)習(xí)JavaScript,也就能同時(shí)掌控前臺(tái)、后臺(tái)和感測(cè)端的軟硬件!

0.2 MPU、MCU與SoC介紹

處理器芯片依照功能來區(qū)分,大致分成如下三種類型。

MPU:全名是Microprocessor Unit(微處理器單元),其實(shí)就是CPU(中央處理器),可運(yùn)行指令,進(jìn)行運(yùn)算和邏輯處理。

MCU:全名是Microcontroller Unit(單片機(jī)),把微處理器(MPU)和快閃存儲(chǔ)器、主存儲(chǔ)器(內(nèi)存)包在同一個(gè)芯片里,相當(dāng)于一臺(tái)微型計(jì)算機(jī),耗電量低,但是處理器的性能不高(時(shí)鐘頻率在200MHz以內(nèi)),而且存儲(chǔ)器容量不大(以KB為單位)。

當(dāng)今的MCU通常也會(huì)集成模擬-數(shù)字轉(zhuǎn)換器(模數(shù)轉(zhuǎn)換)、USB和其他外圍界面控制器。Arduino UNO的ATmega328芯片屬于MCU。

SoC:全稱為System on a Chip(系統(tǒng)芯片),集成微處理器和特定功能,例如,圖像處理單元(顯示卡)、WiFi網(wǎng)絡(luò)、藍(lán)牙、音效處理等。智能手機(jī)以及某些個(gè)人計(jì)算機(jī)的處理器,都屬于SoC。采用這類處理器的設(shè)備,通常需要較高速的運(yùn)算性能(時(shí)鐘頻率達(dá)數(shù)百M(fèi)Hz至數(shù)GHz)以及較大的存儲(chǔ)器容量(單位是MB或GB),所以存儲(chǔ)器不在同一個(gè)芯片上,耗電量也較大。

樹莓派的處理器芯片屬于SoC。就功能而言,SoC大于MCU:

以穿戴設(shè)備應(yīng)用來說,MCU足以勝任普通數(shù)字手環(huán)所需,而且能長(zhǎng)時(shí)間運(yùn)作;具備多媒體功能的智能手表,就必須采用SoC。某些智能手表甚至同時(shí)搭載SoC和MCU,前者處理復(fù)雜的多媒體運(yùn)算,后者用于連接傳感器以及電源管理。

0.3 章節(jié)導(dǎo)讀

第1章JavaScript入門:介紹JavaScript的由來、基礎(chǔ)語法、瀏覽器的DOM(文檔對(duì)象模型)、事件處理程序、使用Chrome瀏覽器調(diào)試JavaScript代碼、在網(wǎng)頁中嵌入JavaScript代碼等主題。

第2章 認(rèn)識(shí)jQuery庫:jQuery是當(dāng)今使用最廣泛的JavaScript庫,主要作用是讓動(dòng)態(tài)網(wǎng)頁開發(fā)變得更簡(jiǎn)單。本章將通過集成Arduino以太網(wǎng)絡(luò)與jQueryUI(交互界面)程序,帶領(lǐng)讀者認(rèn)識(shí)jQuery語法、網(wǎng)頁信息交換格式(CSV、XML和JSON)和“不刷新網(wǎng)頁,動(dòng)態(tài)更新內(nèi)容”的AJAX技術(shù)。

第3章Node.js入門:Node.js是一個(gè)獨(dú)立的JavaScript運(yùn)行環(huán)境,可以讓我們使用JavaScript開發(fā)應(yīng)用,在瀏覽器之外運(yùn)行。本章將介紹Windows、Mac OS X和Linux(樹莓派)系統(tǒng)的Node.js安裝方式,并通過非阻塞I/O讀取文件、自定義與引用程序模塊、使用npm工具管理模塊、使用Express框架開發(fā)網(wǎng)站應(yīng)用、從Arduino傳遞溫濕度值給Node網(wǎng)站等數(shù)個(gè)實(shí)例認(rèn)識(shí)Node.js。

第4章Node.js串口通信與樹莓派GPIO控制:串口是連接Arduino與個(gè)人計(jì)算機(jī)和Linux微電腦控制板最常用的界面。GPIO則是樹莓派控制板的標(biāo)準(zhǔn)外圍界面,本章除了介紹如何使用Node.js連接與控制串口和GPIO界面,也將介紹GPIO界面集成自制Arduino控制板的方法,還有MOSFET電子元器件,以及通過MOSFET組成5V和3.3V的電壓轉(zhuǎn)換板。

第5章 使用霹靂五號(hào)操控Arduino:Johnny-Five(霹靂五號(hào))是一個(gè)Node.js庫,讓計(jì)算機(jī)(或Linux微電腦控制板)以JavaScript程序操控連接在USB接口的Arduino。本章將比較“霹靂五號(hào)”與Arduino的C語法異同,并且通過讀取開關(guān)(數(shù)字)信號(hào)、模擬輸入和PWM輸出、LM35溫度傳感器、舵機(jī)控制,還有瀏覽器與矩陣LED作畫等實(shí)例,讓讀者了解“霹靂五號(hào)”和網(wǎng)頁實(shí)時(shí)通信程序(socket.io)。

第6章 電子郵件、串流視頻、計(jì)算機(jī)視覺與操控舵機(jī):本章的示例以樹莓派攝像頭為主,第一個(gè)示例搭配PIR人體紅外傳感器,在偵測(cè)到入侵者時(shí),自動(dòng)拍照并發(fā)送E-mail。第二個(gè)示例介紹使用socket.io和M-JPEG壓縮程序,在網(wǎng)頁上顯示串流視頻。第三個(gè)示例介紹簡(jiǎn)易的攝像頭+DIY舵機(jī)云臺(tái),并通過觸控屏、鍵盤和電玩把手控制云臺(tái)。最后一個(gè)例子是在計(jì)算機(jī)的瀏覽器上,通過JavaScript擷取攝像頭的視頻,并偵測(cè)其中是否有人類臉孔,若有的話,控制舵機(jī)跟著臉孔轉(zhuǎn)動(dòng)。

第7章 使用MongoDB數(shù)據(jù)庫以及ejs模板引擎創(chuàng)建動(dòng)態(tài)網(wǎng)頁:MongoDB是一款適合處理大數(shù)據(jù)與物聯(lián)網(wǎng)數(shù)據(jù)的免費(fèi)、開源數(shù)據(jù)庫,本章將介紹MongoDB的安裝方式、基本架構(gòu)以及數(shù)據(jù)的添加、擷?。êY選)、修改和刪除等基本操作,并通過Node.js的Mongoose包(package)連接數(shù)據(jù)庫,存儲(chǔ)Arduino上傳的數(shù)據(jù)。

第8章 數(shù)據(jù)可視化——使用C3.js與D3.js繪制圖表:若只在網(wǎng)頁上用文、數(shù)字列舉數(shù)據(jù),未免太乏味,本章將介紹如何采用知名的C3.js和D3.js庫,以活潑生動(dòng)的量表(gague)和圖表(chart)形式呈現(xiàn)存儲(chǔ)在MongoDB數(shù)據(jù)庫里的數(shù)據(jù),以及Arduino傳入的實(shí)時(shí)數(shù)據(jù),并且通過簡(jiǎn)易的數(shù)字濾波手法過濾噪聲。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2945

    文章

    47818

    瀏覽量

    414824
  • javascript
    +關(guān)注

    關(guān)注

    0

    文章

    526

    瀏覽量

    56321
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    一篇文章帶你了解什么是聯(lián)網(wǎng)技術(shù)?

    聯(lián)網(wǎng)技術(shù)(Internet of Things, IoT)是一種通過信息傳感設(shè)備,按約定的協(xié)議,將任何物體與網(wǎng)絡(luò)相連接,實(shí)現(xiàn)智能化識(shí)別、定位、跟蹤、監(jiān)管等功能的技術(shù)。聯(lián)網(wǎng)的概念最早
    發(fā)表于 02-09 16:58

    Lora基站在聯(lián)網(wǎng)應(yīng)用的重要性

    Lora基站在聯(lián)網(wǎng)應(yīng)用中具有重要的地位。首先,Lora基站可以實(shí)現(xiàn)對(duì)聯(lián)網(wǎng)設(shè)備的遠(yuǎn)程監(jiān)測(cè)和控制,為聯(lián)
    發(fā)表于 12-03 07:09

    為啥現(xiàn)在這么多人學(xué)聯(lián)網(wǎng)?

    聯(lián)網(wǎng)為啥成了“香餑餑”?找工作或轉(zhuǎn)行,大家最關(guān)心的無非是“行業(yè)有前景嗎?”“學(xué)完能找到工作嗎?”“薪資怎么樣?”而聯(lián)網(wǎng),剛好把這幾個(gè)點(diǎn)都占了,也難怪最近越來越多人往這個(gè)方向走。 3
    發(fā)表于 11-18 15:39

    學(xué)習(xí)聯(lián)網(wǎng)怎么入門?

    隨著聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,越來越多的人開始關(guān)注學(xué)習(xí)這一領(lǐng)域。但是對(duì)于初學(xué)者來說,聯(lián)網(wǎng)似乎是一個(gè)龐雜的概念,學(xué)習(xí)起來很困難。因此,從哪里開始學(xué)習(xí)
    發(fā)表于 10-14 10:34

    學(xué)習(xí)聯(lián)網(wǎng)可以做什么工作?

    學(xué)習(xí)聯(lián)網(wǎng)專業(yè)后,你可以從事多種與聯(lián)網(wǎng)相關(guān)的工作。聯(lián)網(wǎng)是一個(gè)非常新穎和實(shí)用的領(lǐng)域,各種應(yīng)用場(chǎng)
    發(fā)表于 10-11 16:40

    常見的聯(lián)網(wǎng)連接方式有哪些?

    常見的聯(lián)網(wǎng)連接方式
    發(fā)表于 09-08 08:26

    如何從 MCU/MPU 角度保護(hù)聯(lián)網(wǎng)應(yīng)用?

    如何從 MCU/MPU 角度保護(hù)聯(lián)網(wǎng)應(yīng)用?
    發(fā)表于 09-08 07:33

    請(qǐng)問什么是聯(lián)網(wǎng)智庫?

    什么是聯(lián)網(wǎng)智庫?
    發(fā)表于 08-07 06:45

    聯(lián)網(wǎng)藍(lán)牙模塊有哪些優(yōu)勢(shì)?

    隨著聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,藍(lán)牙模塊作為聯(lián)網(wǎng)的重要組成部分,其應(yīng)用越來越廣泛。那么,聯(lián)網(wǎng)藍(lán)牙模
    發(fā)表于 06-28 21:49

    聯(lián)網(wǎng)的應(yīng)用范圍有哪些?

    聯(lián)網(wǎng),簡(jiǎn)單來說,就是“萬相連的互聯(lián)網(wǎng)”。它以互聯(lián)網(wǎng)為基石,將用戶端延伸至物品與物品之間,實(shí)現(xiàn)信息的交換與通信。打個(gè)比方,你的智能手表能實(shí)
    發(fā)表于 06-16 16:01

    聯(lián)網(wǎng)未來發(fā)展趨勢(shì)如何?

    近年來,聯(lián)網(wǎng)行業(yè)以其驚人的增長(zhǎng)速度和無限的潛力成為了全球科技界的焦點(diǎn)。它正在改變我們的生活方式、商業(yè)模式和社會(huì)運(yùn)轉(zhuǎn)方式。那么,聯(lián)網(wǎng)行業(yè)的未來發(fā)展趨勢(shì)將會(huì)是怎樣的呢?讓我們一同探尋其
    發(fā)表于 06-09 15:25

    聯(lián)網(wǎng)工程師為什么要學(xué)Linux?

    聯(lián)網(wǎng)工程師需要掌握Linux的主要原因可以從技術(shù)生態(tài)、開發(fā)需求、行業(yè)應(yīng)用及就業(yè)競(jìng)爭(zhēng)力四個(gè)角度來分析: 一、技術(shù)生態(tài)與行業(yè)適配性 1)嵌入式開發(fā)的主流平臺(tái) 聯(lián)網(wǎng)設(shè)備往往基于嵌
    發(fā)表于 05-26 10:32

    智慧消防聯(lián)網(wǎng)平臺(tái)

    本人想建立一個(gè)聯(lián)網(wǎng)智慧消防平臺(tái),想找懂技術(shù)的有合伙意愿的共同投資開發(fā),有感興趣的聯(lián)系我13633612945
    發(fā)表于 04-15 22:18

    蜂窩聯(lián)網(wǎng)怎么選

    的數(shù)據(jù)傳輸速率。有了蜂窩聯(lián)網(wǎng)技術(shù),您就不必在功耗和數(shù)據(jù)傳輸速率之間做出妥協(xié),而是可以兩全其美。 終身成本:雖然某些 LPWAN 技術(shù)的前期成本可能看起來很吸引人,但評(píng)估整個(gè)生命周期的成本(部署
    發(fā)表于 03-17 11:46

    為什么選擇蜂窩聯(lián)網(wǎng)

    在為您的聯(lián)網(wǎng)(IoT)應(yīng)用評(píng)估最合適的低功耗廣域網(wǎng)(LPWAN)技術(shù)時(shí),除了考慮技術(shù)指標(biāo)外,還必須考慮各種因素,因?yàn)榧夹g(shù)指標(biāo)本身可能與實(shí)際性能大相徑庭。與 LoRaWAN、Sigfox
    發(fā)表于 03-17 11:42