使能對其它設備的無線網絡控制和感測的、光學配置的模塊化控制系統(tǒng)的制作方法
【專利摘要】將任意非聯(lián)網設備與無線計算機網絡進行接口連接的系統(tǒng)和方法。本發(fā)明提供一種可光學配置的無線通信模塊,采取固定或可拆卸形式,具有無線(例如,WiFi)網絡連通性。該模塊還具有可編程的任意設備控制器、相關聯(lián)的軟件,并且至少任意設備和模塊的組合還提供唯一ID碼。軟件令牌輔助的方法可用于將該唯一ID碼與合適的控制軟件進行關聯(lián),并將該關聯(lián)存儲于網絡服務器的存儲器中。本發(fā)明還使用基于互聯(lián)網的服務和本地光學編程器來對模塊的無線網絡配置進行配置。一旦建立起連通性,則該模塊可以將其唯一ID碼上傳到服務器,并且從服務器接收合適的任意設備控制代碼。便攜式版本的模塊可以在任意設備之間隨意地交換,并且將自動對自身進行配置。
【專利說明】使能對其它設備的無線網絡控制和感測的、光學配置的模塊化控制系統(tǒng)
[0001]對相關申請的交叉引用
[0002]本申請是發(fā)明人Hugo Fiennes于2012年5月25日提交的美國專利申請13/481,737 “MODULARIZED CONTROL SYSTEM TO ENABLE NETWORKED CONTROL AND SENSINGOF OTHER DEVICES (使能對其他設備的網絡控制和感測的模塊化控制系統(tǒng))”的部分接續(xù)申請;本申請還要求發(fā)明人Hugo Fiennes于2012年5月15日遞交的美國臨時申請 61/647,476 “MODULARIZED CONTROL SYSTEM TO ENABLE NETWORKED CONTROL ANDSENSING OF OTHER DEVICES(使能對其他設備的網絡控制和感測的模塊化控制系統(tǒng))”的優(yōu)先權權益;本申請還要求發(fā)明人Hugo Fiennes于2012年I月5日遞交的美國臨時申請 61/583, 299 “Method of transferring network setup information using opticalsignaling(利用光學信令傳輸網絡設置信息的方法)”的優(yōu)先權權益;美國專利申請13/481,737還要求發(fā)明人Hugo Fiennes于2011年5月26日提交的美國臨時申請61/490, 498 “MODULARIZED CONTROL SYSTEM TO ENABLE NETWORKED CONTROL AND SENSING OFOTHER DEVICES (使能對其他設備的網絡控制和感測的模塊化控制系統(tǒng))”的優(yōu)先權權益;所有這些申請的內容通過弓I用并入本文。
【技術領域】
[0003]本發(fā)明屬于網絡連通性和計算機化設備領域,具體是將計算機網絡連通性和可選的網絡控制或監(jiān)測兩者施加到非聯(lián)網設備的方法。
【背景技術】
[0004]許多電氣設備可以受益于聯(lián)網而能夠容易地進行控制和監(jiān)測。例如自動灌溉系統(tǒng)可以由遠程計算機鑒于從天氣信息提供商獲取的天氣預報來進行控制。
[0005]傳統(tǒng)上,受益于被連接到計算機網絡上的設備必須通過相當大的改造才能達到此目的。通常,必須添加通信接口,必須開發(fā)大量的軟件和固件,并且整個產品在可出售之前必須經過無線批準測試。通常,需要在設備上增加按鈕和指示以便于通信接口的配置,在用戶體驗上,這增加了額外的成本和復雜度。
[0006]傳統(tǒng)上,為了在設備上增加這種連接,設備廠商必須在設備上增加硬件,即通信接口和額外的處理能力兩者,以應對操作該接口的負擔。所涉及的開發(fā)工作是艱巨的,并且還為支持軟件更新以修復bug和增加新功能輔助用戶安裝和配置通信接口帶來了額外的負擔。通常,上述負擔均不屬于廠商的擅長領域,也不涉及他們的創(chuàng)新領域,因此分散了他們開發(fā)自己的核心知識產權的精力。
[0007]由于廠商缺乏經驗,并且讓任何單個公司去開發(fā)基于互聯(lián)網的服務(使設備與之通信,從而能夠檢查設備的狀態(tài),控制設備的行為)的負擔高昂,因此為這些設備提供的大多數(shù)服務是嚴重稀缺、充滿bug并且不具有新技術或潛在有用的合作服務的優(yōu)勢。
[0008]由于這些設備的網絡部分的實現(xiàn)經常是不完整且充滿bug的,因此狗仔這些網絡使能設備的客戶經常在安裝和操作這些設備的網絡部分上,具有很差的體驗。另外,客戶經常發(fā)現(xiàn),沒有哪個單一廠商能夠提供所有他們所希望控制或監(jiān)測的設備的網絡使能版本。結果,客戶經常被迫使用多種不同和不兼容的控制或監(jiān)測服務,并且經常無法將監(jiān)測一個設備的結果鏈接到另一設備的行動上。
[0009]現(xiàn)有的模塊化網絡接口包括作為Eye-Fi卡出售的美國專利7,702,821。此卡是一種無線使能SD卡,本質上是具有SD外形的標準WiFi卡。其他WiFi卡以及其他類型的網卡(包括以太網卡、藍牙卡等)也是已知的。這些現(xiàn)有的設備通常在它們被安裝到的主機設備上增加網絡硬件接口,但在其他方面一般操作為或作為“啞”從屬設備。
【發(fā)明內容】
[0010]本發(fā)明提供一種將任意設備(例如,電氣設備)連接到計算機網絡的標準化方式,從而允許這些任意設備被用戶或者被在位于本地或遠程的計算機上執(zhí)行的算法監(jiān)測和/或控制。這些算法可以考慮其它傳感器的狀態(tài),或者可以考慮實際上幾乎可以是可通過互聯(lián)網訪問的任何信息源的狀態(tài)。
[0011]本發(fā)明提供一種標準化模塊式無線通信接口(通信模塊),其使得普通的任意設備制造商(廠商)極大地減輕了接口開發(fā)和批準的沉重負擔。作為必須基于每個設備辛苦地開發(fā)和獲取每個設備的常規(guī)批準的替代,可以一次性地開發(fā)和批準標準化模塊式無線通信接口,并且隨后將其用于各種各樣的不同任意設備。
[0012]在一個實施例中,本發(fā)明進一步將可編程任意設備控制器集成到其模塊式無線網絡接口中,從而免除了針對任意設備的大部分軟件開發(fā)的負擔。本發(fā)明還提供一種統(tǒng)一的基于互聯(lián)網的通信服務,以管理各種各樣的不同的通信模塊和任意設備。由于本發(fā)明的通信模塊的硬件和其大多數(shù)軟件在不同的主機設備(任意設備)之間是通用的,因此,生產大量的通信模塊可以使通信模塊成本較低,并且能夠為任意設備建立和操作極大改進的控制服務。
[0013]本發(fā)明的硬件部分由通信模塊和處理器構成,該硬件部分通常被封裝成很小的易處理模塊,通常為用戶可拆卸的模塊,但是也可以是擬嵌入到硬件中的不可拆卸的模塊。.例如,一個實施例可以實現(xiàn)具有標準SD(安全數(shù)字)卡外形的通信模塊。這種實施例具有以下優(yōu)點:它們?yōu)橛脩羲煜ぃ∏也徽加萌我庠O備的大量空間,易于處理,并且在某些情況下可以制成與實際SD存儲卡相兼容。
[0014]如以上提到的,現(xiàn)有技術的一個重要缺點在于,在新的設備可用于網絡之前,大多數(shù)通信接口需要進行某種配置。因此,任意設備廠商被迫在其任意設備上增加按鈕、指示器、屏幕或者甚至是連接器,以使得計算機能夠附接到任意設備上進行配置,所有這些增加了成本、尺寸和額外的支持負擔。
[0015]本發(fā)明的通信模塊部分通過多種手段解決了這個問題。在很多實施例中,外設卡或通信模塊,無論是固定的還是可拆卸的,都可以集成光電二極管,并且可使用光學配置方法進行無線網絡接入的配置。在其它實施例中,盡管仍然可以經常使用光學配置方法,但通信模塊也可以被配置為可拆卸的外設卡,其可在被插入到第一設備中時被進行網絡接入的配置,并且在隨后被插入到第二設備中時,仍能夠保持該網絡接入配置。在某些實施例中,當通信模塊被配置為具有存儲卡(例如,SD卡)類似的尺寸和電輸出引腳連接時,該通信模塊能夠通過現(xiàn)有的存儲器接口被插入到計算機中。隨后,通信卡能夠被計算機配置,并且然后與計算機斷開并且插入到待控制或感測的任意設備中。
[0016]作為對以上論述的擴展,在其他實施例中,不一定要插入到計算機中進行配置,相反,設備可被光學地進行網絡接入的配置,并且隨后使用與遠程服務器的WiFi連接被無線編程。在這些實施例中,盡管通信模塊仍可以被配置為具有存儲卡(例如,SD卡)類似的尺寸和電輸出引腳連接,但是通信模塊不必為被局限于這種存儲卡配置,而是可以出于解決當前問題的方便性考慮,被配置為具有其他尺寸和輸出引腳配置、可拆卸或固定配置。無論如何,由于與標準存儲卡(例如,SD卡形式)相關聯(lián)的大的制造基礎設施和低成本,使用這種存儲卡形式盡管不是嚴格必需的,但是從成本的角度來看通常仍是有用的。另外,這種形式允許廠商(制造商)從大量的現(xiàn)成插座類型中挑選,并且允許廠商為通信模塊提供電氣和物理接口。
[0017]在一些實施例中,特別是順從存儲卡尺寸和輸出引腳的實施例中,為了便于直接配置和編程,通信模塊可將自身配置為對計算機來說呈現(xiàn)為存儲設備,例如差不多是標準固態(tài)存儲卡存儲設備。這種類型的配置具有如下優(yōu)點:其允許將需要在設置的計算機或計算機或設備上執(zhí)行的任何配置軟件存儲在通信模塊本身中,并且還確保廣泛的兼容性。
[0018]涉及將設備連接到計算機網絡的更復雜的問題之一是網絡環(huán)境本身。網絡可能被配置得很差,并且網絡的所有者往往可能缺乏修復問題的技術知識,例如,如果網絡使用NAT (網絡地址轉換),則位于NAT網關之后的設備可能無法與互聯(lián)網上的計算機相接觸。這對于很多應用來說是個嚴峻的障礙。另外,試圖無線連接到本地WiFi網絡的設備經常需要諸如服務設置標識(SSID)信息和密碼之類的信息來進行成功的連接。
[0019]作為將校正或改變其網絡配置的負擔置于用戶身上的替代,本發(fā)明的通信模塊可通過軟件進行配置以使用最新的技術(包括來自遠程網絡服務的協(xié)助),以自動檢查網絡環(huán)境,并且相應地對其自身進行配置。
[0020]通信模塊的操作軟件也可以被配置以維持雙向永久式互聯(lián)網連接,從而允許通信模塊恒定地與網絡服務保持聯(lián)系。這允許在任何時候發(fā)生異步事件時將該異步事件傳遞到通信模塊。
[0021]根據本發(fā)明,通信模塊的電氣接口進一步被設計為允許模塊將其各種輸出引腳的功能以多種方式進行配置,以為所附接的設備提供最佳的電氣和功能匹配。這具有以下優(yōu)點:允許在各種不同的任意設備和應用中使用完全相同的通信模塊。這樣還降低了為任何給定任意設備增加通信模塊接口的成本。相反,如早先所提及的,當前技術(現(xiàn)有技術)中的增加網絡接口,經常涉及增加通信接口和額外的處理能力(因為設備本身可能不具有處理能力或者具有非常有限的處理能力),并且這種早先的方法可能非常昂貴。
[0022]最后,在某些實施例中,本發(fā)明的通信模塊可在其處理模塊內操作虛擬機環(huán)境和/或沙盒環(huán)境。該虛擬機環(huán)境可執(zhí)行設備相關代碼以控制任意設備本身。這種將通信模塊的軟件的家務/網絡相關功能與設備相關部分離開來是非常有利的,原因如下。一個原因是,通信模塊的設備相關代碼可以被監(jiān)測,并且如果出現(xiàn)故障可以被重啟。進一步地,通信模塊的軟件的復雜網絡軟件部分可以不受通信模塊的任意設備相關代碼的干擾而操作。因此,本發(fā)明的通信模塊網絡管理軟件可以處理家務任務,例如,使設備相關代碼與來自任意設備廠商的最新開發(fā)保持一致。[0023]虛擬機概念的另一優(yōu)點在于,模塊的硬件可以被改進和更新,而仍保持與廠商的設備相關代碼的兼容性,從而允許廠商不必擔心通常在其具體關注點和能力范圍之外的領域的復雜性。
[0024]可替代地或作為補充地,通信模塊可以在沙盒模式下操作,以防止任意設備接口代碼的程序崩潰干擾網絡控制代碼。
[0025]在一個優(yōu)選的實施例中,本發(fā)明可以是將任意非聯(lián)網設備與無線計算機網絡接口連接的系統(tǒng)和方法。本發(fā)明提供一種可光學配置的無線通信模塊,其采用固定和可拆卸的形式,并具有無線(例如,WiFi)網絡連通性。該模塊還具有可編程任意設備控制器、相關聯(lián)的軟件,并且至少任意設備與模塊的組合還提供唯一 ID碼。軟件令牌(例如,硬件標識軟件令牌)輔助的方法可用于將唯一 ID碼與合適的控制軟件進行關聯(lián),并且該關聯(lián)被存儲在網絡服務器的存儲器中。本發(fā)明還使用基于互聯(lián)網的服務和本地光學編程器來配置模塊的無線網絡配置。一旦建立連通性,則模塊可以將其唯一 ID碼上傳到服務器上,并從服務器接收合適的任意設備控制代碼。便攜式版本的模塊可在任意設備之間隨意地進行交換,并且將自動對其自身進行配置。
[0026]注意,除了幫助改進設備連通性和控制之外,利用本發(fā)明的通信模塊從服務器獲取設備代碼還具有其它優(yōu)點。具體來說,這幫助了廠商修復代碼中的bug,并且還易于提出對本領域各種設備的其它代碼改進。
[0027]本發(fā)明的通信模塊和系統(tǒng)的特定版本的原型在2012年5月16日以各種新聞稿和示例的形式公布于眾。在這些新聞稿中,通信模塊被稱為“Imp”。這樣做部分地是為了向形成1969年的阿帕網絡(其后來變?yōu)榛ヂ?lián)網)的基礎的接口消息處理器“MP”設備致敬。使用術語“Imp”的部分原因是,就像神話中的小鬼、精靈或惡魔,該設備較小且能夠一定程度地神奇地激活與其接口連接的各種任意設備。在本文中,本發(fā)明的通信模塊部分通常將以可替換的方式稱為“Imp”、“Imp設備”、“Imp通信模塊”等。幫助對各種通信模塊進行管理和網絡使能的基于互聯(lián)網的服務器系統(tǒng)偶爾也可以以可替換的方式被稱為Imp云服務、Imp服務器等。
【專利附圖】
【附圖說明】
[0028]圖1示出了典型的現(xiàn)有技術的非聯(lián)網的簡單電氣或電子任意設備。
[0029]圖2示出了典型的現(xiàn)有技術中通過增加通信接口、執(zhí)行與網絡相關的處理的處理器以及可選地執(zhí)行系統(tǒng)中的實際控制功能的控制處理器來在簡單任意設備上增加網絡控制的方法
[0030]圖3示出了如何將本發(fā)明的通信模塊與簡單任意設備集成。
[0031]圖4給出了如何將本發(fā)明的系統(tǒng)和互聯(lián)網服務器系統(tǒng)與多個站點集成的更詳細視圖,每個站點可包含多個聯(lián)網設備,每個聯(lián)網設備又與一通信模塊連接以提供網絡連通性。
[0032]圖5示出了本發(fā)明的通信的模塊系統(tǒng)的概述。
[0033]圖6給出了可根據本發(fā)明的如何將未聯(lián)網任意設備聯(lián)網的示例。
[0034]圖7示出了如何使用接口消息處理器(Imp)云服務來對燈開關類型的任意設備(此處為燈開關)進行Imp使能和配置。[0035]圖8示出了如何在標準Web瀏覽器上使用圖形化編程方法來簡單配置Imp云服務的更多細節(jié)。
[0036]圖9示出了如何對Imp設備進行網絡接入的光學配置,這里,偶爾被稱為“眨眼”步驟。
[0037]圖10示出了示意性示出了配備有光電檢測器的Imp設備的細節(jié)。
[0038]圖1lA給出了用戶使用智能設備對Imp使能任意設備(這里是AC電源開關)進行網絡接入的光學配置的示例。
[0039]圖1lB示出了如何將“Imp登記卡”和軟件令牌(如硬件標識軟件令牌)用于創(chuàng)建針對給定任意設備的唯一 ID與合適類型的軟件代碼之間的關聯(lián)的示例。
[0040]圖12示出了用戶將Imp云服務配置為使得圖7中的Imp使能電源開關能夠控制圖1lA中的Imp使能AC電源開關。
[0041]圖13示出了 Imp使能濕氣檢測器。
[0042]圖14字面上給出了根據本發(fā)明的已廉價地聯(lián)網的“更好的捕鼠器”(這里,為Imp使能電捕鼠器)的示例。
[0043]圖15示出了典型SD卡的照片,在一些實施例中該SD卡可以用作Imp通信模塊的外殼和接口,以及各種替代的、軟件可配置的Imp引腳輸出電氣配置。
[0044]圖16示出了用于接納SD卡類型的Imp通信模塊的標準槽設備的電路圖的示例。
【具體實施方式】
[0045]制造聯(lián)網設備的挑戰(zhàn)是什么?在廠商(如設計師,制造師)試圖制造聯(lián)網設備時,他們所經歷的部分問題有:
[0046]1.無線設計:為了使無線設備具有良好的性能,廠商需要選擇合適的無線芯片組,解決RF設計問題(天線匹配,供電質量等),設計天線,然后針對他們想要將該設備銷售到的每個國家,通過昂貴的無線批準測試。
[0047]許多表現(xiàn)最佳的無線芯片是專門為手機使用而設計的,所以可能非常小,并且難以使用(例如0.4mm節(jié)距的BGA),將這些無線芯片放在任何給定任意設備的PCB上會極大地增加制造和裝配成本。
[0048]有些廠商提供集成了無線電路和天線的無線模塊。這些預批準的模塊一定程度地減少了無線設計負擔,但有其他缺點,詳情如下。
[0049]2.嵌入式網絡固件:每個網絡設備都需要固件來處理網絡通信。此代碼經常被頻繁地更新以修復bug和提高安全性:這些變化通常要由廠商進行整合,導致即使產品已經出廠之后,還需要大量的支持工作。
[0050]此外,廠商往往需要提供軟件更新工具給他們的客戶,使重要更新可應用于該領域中的產品。此問題也可能會導致任意設備的倉儲和配送的問題,因為這些內置有充滿bug的固件的設備可能在它們被出售前就需要進行更新。
[0051]3.網絡配置:幾乎每一個無線協(xié)議要求都需要設置(setup)程序以將設備安全地連接到無線網絡。這通常需要在產品中至少包括專用按鈕和指示LED,這給產品的物理設計增加了成本和復雜性。的確,更為常見的是,這種方法需要給任意設備增加顯示屏幕和多個按鈕,但如果增加這些特征僅僅是為了將設備配置為用于特定網絡,則這是一種不能接受的負擔。
[0052]4.設備軟件:除了網絡軟件,很多任意設備需要操作該設備的功能的應用軟件。對于任何軟件,如上面第2節(jié)提到的,都意味著要對基礎代碼(shipping code)進行支持和更新。
[0053]5.互聯(lián)網服務:聯(lián)網設備需要提供一種供用戶訪問其功能的方式。
[0054]第一代網絡設備使用嵌入式web服務器來實現(xiàn)控制,但是這往往是不安全且受限的,例如,為了從局域網外部訪問設備,用戶需要他們的防火墻上開孔。這是復雜的,并且往往需要專門的知識和經驗才能成功地執(zhí)行。
[0055]第二代設備連接到互聯(lián)網服務,互聯(lián)網服務將業(yè)務中繼到用戶的防火墻后面的設備,或中繼來自用戶的防火墻后面的設備的業(yè)務。通過登錄到互聯(lián)網服務,用戶可以監(jiān)測和控制他們的設備。該廠商必須設計、構建、運營及支持這些額外的服務。
[0056]6.智能手機應用:現(xiàn)代網絡設備經常伴隨著智能手機應用程序。然而,難以針對多個平臺構建良好的智能手機應用程序。此外,這種方法也往往迫使任意設備廠商花費精力和費用來運行作為設備的網關的互聯(lián)網服務。
[0057]7與其他設備和服務的集成:通常情況下,用戶會希望將外部動作鏈接到他們的設備,如自動的“電池電量低”的電子郵件,當檢測到移動時發(fā)送文本,等等。這給互聯(lián)網服務增加了更多的復雜性。
[0058]在一個實施例中,本發(fā)明可以是一種在任意非聯(lián)網設備(任意設備,主機設備)上增加網絡接口的方法,系統(tǒng)或設備。這個任意設備通常將至少部分地通電,并且往往具有適當?shù)碾娐穪韺崿F(xiàn)其功能。
[0059]如前面所論述的,本發(fā)明部分地包括通信模塊或卡,其被設計成負責對主機設備進行至少一定程度的控制(也稱為“任意非聯(lián)網設備”或簡稱為“任意設備”)。再次如前面所論述的,該通信模塊或卡可能偶爾被替代地稱為“ IMP"或“ Imp設備”或“ IMP通信模塊”。
[0060]本發(fā)明的基于通信模塊的“Imp”系統(tǒng)被設計為幫助解決前面論述的具體問題1-7。具體地,Imp設備作為將任何設備連接到互聯(lián)網的“粘合劑”,以此使得用戶能夠從連接中獲得真正的價值。
[0061]Imp設備通常將包括WiFi或其他短距離無線數(shù)字收發(fā)機,如支持IEEE802.llb/g/η標準的收發(fā)機,但也可以使用其它標準(例如,紫蜂,藍牙等)。Imp設備將進一步包括處理器、軟件以及嵌入式網絡固件。該嵌入式網絡固件通常將包括兼容互聯(lián)網標準的IP棧和TLS安全性,以確保方便安全地連接到互聯(lián)網服務器,如Imp云服務,這將在稍后進行更詳細地描述。在一些實施例中,Imp設備可以被配置為根據需要從授權的互聯(lián)網服務器自動更新其軟件。
[0062]為了容納Imp通信模塊,該任意設備通常會被設計或改造為在其表面上具有槽,下面為容納用于Imp設備的插座以及支持電路的空間,所述支持電路例如為與任意設備的電路、Imp設備電源以及ID芯片的連接。這將在稍后更加詳細地論述。該槽與支持插座和電路一起,可能偶爾被替代地稱為“ MP槽”,“ IMP適配器”或“標準化槽設備”。
[0063]雖然該通信模塊可以采取多種不同的物理形式,如前面所論述的,在一個優(yōu)選實施例中,通信模塊將包含具有物理兼容的電連接的標準固態(tài)存儲卡物理接口。因此,例如在一些實施例中,通信模塊可以被構建為標準的安全數(shù)字(SD)存儲卡形式,在這種情況下,通信模塊可與標準SD卡具有在物理上相同的電引腳(見圖15(1500)和(1502))。然而,需要注意的是,這些電引腳的功能,至少在一些Imp設備中在軟件控制的配置上,通常將不同于標準SD卡的功能。
[0064]也可以使用其他Imp設備卡形式。盡管可以使用與存儲卡不同的Imp設備配置,但這種配置常常是方便的。替代Imp設備實施例的一些示例可能包括迷你SD卡和微型SD形式、PC卡、緊湊閃存卡、智能媒體卡、記憶棒卡、微型(Miniature)卡、多媒體卡、SxS卡、通用閃存存儲卡、xD-picture卡、串行閃存模塊卡、μ卡、NT卡、XQD卡,等等。
[0065]在一些實施例中,Imp通信模塊也可以具有物理接口,以及可選地,甚至是電子和邏輯接口,在至少一種操作模式中,上述接口能夠連接到一個標準存儲卡讀取器,然后與存儲卡讀取器一起工作,以根據(根據該通信模塊的特定外形的)標準存儲卡協(xié)議來進行數(shù)據的讀寫。因此,如果該通信模塊被構建成與安全數(shù)字(SD)卡兼容,則它也可以被配置為像標準SD卡一樣存儲記憶數(shù)據。在一些實施例中,這也可用于Imp網絡配置、軟件令牌寫入和讀出等目的。
[0066]在任意設備中的Imp通信模塊槽通常將具有可與Imp通信模塊上的在物理上兼容的電連接(引腳)進行交互的通信模塊接口,并且將在這些通信模塊電連接(即,引腳)之間的控制信號傳遞到任意設備中的電路的至少一部分。這些引腳的SD卡示例見圖15(1500)。
[0067]為了便于“混合和匹配”功能(其中一個Imp通信模塊卡可能會被插入到各種不同的任意設備中),在一個優(yōu)選的實施例中,任意設備可另外具有唯一標識(ID)存儲記憶設備或芯片(例如,計算機存儲器芯片和附接到任意設備的接口),其能夠從該任意設備發(fā)送一組唯一標識數(shù)據(即,例如可以描述任意設備的類型、型號、版本號等的代碼編號)到通信模塊??商娲?,ID芯片也可以只包含任何唯一編號,并且Imp服務服務器可以基于該唯一編號查找設備類型。
[0068]如前面所論述的,為了便于標準化,在一些實施例中,可能期望以產生標準化“槽”模塊來接納“頂P”通信模塊或卡。這個標準化槽模塊可以被配置為與各種不同的任意設備相配??紤]到正常的制造成本和可靠性與產量的曲線,這可以幫助推動成本下降,也有利于可靠的性能。
[0069]這種標準化槽模塊可以包括,例如,插槽(例如SD插槽(如果“Imp”的通信模塊或卡是使用SD卡的外形尺寸構建的)),可選的電源(如能夠提供400mA3.3V直流電源),針對“MP”通信模塊或卡的標識芯片(例如Ateml ATSHA204芯片等能夠標識任意設備的標識芯片),和Imp設備上的各個引腳連接到任意設備的電路上的接口電路。無論是否使用標準化槽模塊,在一般情況下,當在本文中使用“槽”這一術語時,應當假定該槽包括通信模塊插槽、可選的通信模塊電源和任意設備標識芯片。圖15示出在這里被稱為“四月開發(fā)板”的標準化槽組件的一個示例,圖16示出此標準化槽模塊的一個實施例的電氣原理圖。注意,如果任意設備能夠向Imp提供足夠電力,那么Imp標準化槽模塊本身則不需要電源。
[0070]Imp通信模塊通常也有通信接口(通常是無線接口,諸如WiFi或藍牙接口,但可替代地,有線接口,例如以太網接口,或紅外IrDA或光纖接口也能夠滿足要求),其能夠與計算機網絡建立通信會話。往往這個計算機網絡將是互聯(lián)網,但也可以使用本地計算機網絡。
[0071]Imp通信模塊通常還具有能夠存儲代碼和數(shù)據的內部固態(tài)存儲器。在一些實施例中,當通信模塊被連接到標準存儲卡讀取器或被標準存儲卡讀取器編程時,一些或所有這些代碼和數(shù)據可被發(fā)送到所述通信模塊,標準存儲卡讀取器經常又被連接到計算機化設備,諸如臺式機或膝上型計算機、平板計算機、智能手機等??商鎿Q地,代碼和數(shù)據可以通過在本文中其它部分所論述的光學和/或無線方式被加載到通信模塊存儲器。
[0072]Imp通信模塊將還具有至少一個內部處理器(例如微處理器,如ARM、MIPs、x86或其他類型的微處理器,其往往具有32位或更高位的指令集和內存模型)。該至少一個內部處理器可以被配置為至少當通信模塊被連接到任意設備中的插槽時執(zhí)行通信代碼以及一些任意設備接口代碼。
[0073]為了節(jié)省存儲空間,在一些實施例中,可能有用的是,將Imp通信模塊配置為能夠運行高級命令式面向對象的編程語言,如Lua'Squirrel等。這種輕量腳本語言能夠適應低成本微處理器和微控制器可用的有限內存空間(如128千字節(jié))。這項技術有助于最小化“Imp”通信模塊的成本,并且同時使得通信模塊既高度可用且易于配置。
[0074]為了進一步方便編程,可通過使用附加的Imp特定的編程API來進一步擴展語言的標準庫(例如Squirrel標準庫)。這種Imp特定的編程API可將語言的標準庫擴展為包括附加類(如Imp硬件類),Imp控制方法和功能,非易失性數(shù)據存儲表,Imp引腳配置、讀取和寫入方法,服務器登錄和控制方法,Imp SPI串行端口配置、讀取和寫入方法,Imp UART配置、讀取和寫入方法,有用的常量,控制標志,等等。
[0075]—旦該任意設備已Imp使能(通常通過將Imp設備插入到任意設備的Imp槽),則該任意設備可以使用本發(fā)明的各種方法被操作。根據這些方法,網絡配置數(shù)據可以被加載到通信模塊,從而配置通信模塊以與服務器(例如,遠程互聯(lián)網服務器)建立網絡連接,該服務器隨后可將任意設備接口代碼加載到通信模塊。
[0076]如稍后將在本文中論述的那樣,在本發(fā)明的一些實施例中,可能有用的是,為“IMP”通信模塊進一步配置光電檢測器,諸如可見光光電檢測器。如果這樣做的話,那么可以很容易地使用調制光從例如運行“MP”網絡配置app的智能手機的發(fā)光顯示屏幕將網絡配置數(shù)據(例如無線網絡配置數(shù)據)上傳到“MP”通信模塊。
[0077]可替代地,通信模塊可以被預加載以設備接口代碼和/或網絡配置數(shù)據。
[0078]這里,假設在此過程中的至少某個點,提供了網絡連接,諸如到互聯(lián)網的無線WiFi連接,或其它連接。
[0079]通過本發(fā)明的設備,系統(tǒng)和方法,命令或數(shù)據可以通過網絡(通常是通過到互聯(lián)網的無線連接來介導)被發(fā)送到Imp通信模塊,在Imp通信模塊處,它們可以由運行相應代碼的至少一個處理器來解釋。隨后,所述命令或數(shù)據然后可通過任意設備的Imp插槽被發(fā)送到任意設備接口。也就是說,該通信模塊中的至少一個處理器可以使用該通信模塊的物理兼容電連接(引腳)將控制信號發(fā)送到任意設備的電路。
[0080]作為補充或替代地,擬從任意設備的電路發(fā)送回網絡的命令或數(shù)據可以使用通信模塊的物理兼容電連接(引腳)從任意設備被發(fā)送到Imp通信模塊。在Imp通信模塊處,這些信號可以由運行該代碼的至少一個處理器來解釋,然后這些信號使用通信模塊的通信接口被發(fā)送到期望的網絡目的地。
[0081]為了更好地理解本發(fā)明,考慮表示現(xiàn)有技術的圖1中所示的簡單非聯(lián)網任意設備。該設備幾乎可以是任何東西,無論是電氣的,電子的還是機械的。在這種背景下,該任意設備的示例可能是電插座、電開關、家用電器(烤面包機,咖啡機,烤箱)、HVAC部件(恒溫器、空調)、照明燈具、安全或接入控制部件(運動檢測器、窗傳感器、標記閱讀器、門鎖)、車庫開門器、泳池處理設備、開窗設備或遮陽控制,等等。
[0082]這樣的任意設備(100)通常包含實現(xiàn)其功能的某種電路(101)。一個示例可以是咖啡機設備,它可以包括加熱元件和相關聯(lián)的閉環(huán)控制系統(tǒng)、泵和壓力傳感器。這個電路可以電簡單或復雜的。作為另一個示例,一個替代的任意設備(開窗器)可以包含電機驅動器、位置傳感器和負荷監(jiān)測電路,可以包括或可以不包括確保系統(tǒng)的正確操作的一定類型的微控制器。
[0083]目前,當廠商期望為任意設備增加網絡連通性時,廠商在任意設備內部電路中增加了兩個或三個新的模塊,如圖2所示,這也代表了現(xiàn)有技術。圖2示出了任意設備(110),其已被增加了控制處理器(111)、通信處理器(112)和通信接口(113)。用以控制任意設備
(114)的實際信號被連接在設備的電路與控制處理器之間。
[0084]在特定的任意設備的設計中,可以存在或者可以不存在控制處理器(112)(這取決于該任意設備的復雜性)。如果不存在控制處理器,則根據現(xiàn)有技術,信號(114)將直接連接到通信處理器。
[0085]值得注意的是,根據現(xiàn)有技術,對特定于設備的電路的控制通常并未集成在通信處理器中。這可能是因為這種集成需要大量的軟件工作和測試才能確??刂乒δ懿粫蓴_通信處理器的正確操作,反之亦然。
[0086]從現(xiàn)有技術的論述出發(fā),現(xiàn)在考慮本發(fā)明的一個實施例,如圖3所示。圖3示出了如何使用本發(fā)明來將網絡連通性增加到簡單的任意設備中,從而得到聯(lián)網的任意設備
(150)。在這個示例中,任意設備的電路(156)由在虛擬機(157)內執(zhí)行的代碼直接控制,所述虛擬機運行于通信模塊(152)的至少一個處理器內。將這種虛擬機和至少一個處理器放置在通信模塊內部,并且又將所述通信模塊配置為能夠直接控制任意設備的一個特別的優(yōu)點是,這意味著任意設備(之前可能需要具有其自己的處理器)現(xiàn)在不一定需要有自己的獨立的控制處理器。作為代替地,所述通信模塊的至少一個處理器可以控制該任意設備。這大大降低了任意設備的成本。
[0087]因此,根據本發(fā)明,Imp通信模塊中的物理處理器(153)現(xiàn)在可以提供與任意設備的特定電路(156)的實際電氣連通性。替代地,當然,任意設備仍可繼續(xù)擁有其自己的處理器,以用于當通信模塊未被提供時的回退操作。這里,例如,當通信模塊未被提供時,任意設備處理器可以被配置為作為主設備,當通信模塊被提供時,任意設備處理器可以被配置為作為主設備,或者甚至完全離線。當與服務器相連接時,可以根據需要緩存操作代碼,從而使得當沒有可用的連接時,能夠使用特定于設備的代碼進行操作。
[0088]任意設備通常會包含一個唯一 ID塊或唯一標識符(151),這通常是某種形式的記憶存儲設備(通常是存儲器芯片),其向Imp通信模塊(152)該設備標識。如將要論述的,該ID塊或唯一標識符允許Imp通信模塊可選地向外部源(如遠程互聯(lián)網服務器或服務)請求正確的虛擬機程序,以使Imp通信模塊來操作該任意設備(如果該Imp通信模塊的存儲器中尚未存儲有適當?shù)娜我庠O備控制代碼或虛擬機程序)。如前面所論述的,這個任意設備ID編號可以是任何唯一編號,并且服務器可以基于該唯一 ID編號查找設備類型。
[0089]Imp通信模塊通信接口(154)通常由至少一個處理器(153)進行控制,從而根據需要實現(xiàn)與網絡和期望的網絡設備(例如管理通信模塊的服務或服務器)的雙向永久連通性。
[0090]需要注意的是,Imp通信模塊的處理器可以在不同的模式下工作。在一種模式下,Imp通信模塊的處理器呈現(xiàn)出較為被動的角色,僅僅負責任意設備外圍的通信。在另一種模式下,例如當插入到其自身沒有微處理器的任意設備中時,Imp通信模塊處理器也可以根據需要成為Imp通信模塊所插入到的任意設備中的主要處理器或主處理器。
[0091]在一些實施例中,Imp通信模塊將包含適當?shù)目赡婀虘B(tài)開關和代碼,所述可逆固態(tài)開關和代碼使能在Imp通信模塊能夠動態(tài)地重新配置它的電氣特性和/或它的電觸點(引腳)的邏輯特性,以適應該Imp通信模塊所插入到的特定的任意設備。這個動態(tài)的軟件控制的重新配置將經?;谝褟倪h程源(例如,提供這種類型的服務的互聯(lián)網服務器)被下載到Imp通信模塊的虛擬機的配置和程序。
[0092]圖4示出了根據本發(fā)明的遠程“服務”源(例如,提供Imp通信模塊管理、配置和操作服務的互聯(lián)網服務器)是如何工作的。這里,為了簡明,該服務將被假定為一適當配置的互聯(lián)網服務器,并且該服務器通常會作為替代地被稱為“服務”、“ Imp服務”、“ MP服務器”或“Imp云服務”。
[0093]如先前所論述的,Imp服務(207)可以是連接到互聯(lián)網的,并且可以由甚至可位于世界各地的一個或多個(通常是多個)物理服務器構成。在后一種情況下,在一個優(yōu)選的實施例中,在給定的物理位置處的Imp通信模塊可優(yōu)先地使用在物理上距離它們較近的Imp服務服務器被管理(directed towards),以減少通信延遲。
[0094]在一些實施例中,將該“ IMP云服務”配置為使得它可以由終端用戶容易地進行配置是有用的。在這里,可以使用各種圖形化編程方法和集成開發(fā)環(huán)境(IDE),其中終端用戶可以簡單地在屏幕上移動象征各種設備、編程命令和功能的框或圖標,通過簡單地用箭頭連接框和/或在框中鍵入簡單的推薦來連接邏輯流(或者,也可以使用基于非圖形化規(guī)則的方法)。這里除了標準化傳感器讀數(shù)、輸出功能和設備控制功能之外,提供其他標準化編程命令也是有用的,如用于發(fā)送RSS提要、發(fā)送和接收SMS消息、發(fā)送和/或接收推特消息等的命令。這樣的消息允許“MP”系統(tǒng)進一步利用廣泛的互聯(lián)網和移動電話通信基礎設施,并進一步增加了系統(tǒng)的通用性。
[0095]每個設備(200)、(201)、(202)可包含Imp通信模塊發(fā)明的相同硬件實施例,每個設備常常加載有不同的任意設備軟件。各Imp通信模塊負責控制設備并根據需要向該設備提供與Imp云服務或其它指定的網絡目的地/設備的連通性(203)。因此,單一物理位置(站點)或客戶可能有許多任意設備,這些任意設備由很多不同的Imp通信模塊控制。
[0096]在一個實施例中,可以通過本地網絡(例如無線網絡,這可以是家庭或企業(yè)網絡)來將通信從連接到每個任意設備的每個Imp通信模塊的通信傳送到本地路由器(205),如WiFi路由器。隨后,該路由器可以將業(yè)務傳送到提供互聯(lián)網連通性的互聯(lián)網服務提供商,或者傳送來自該互聯(lián)網服務提供商的業(yè)務。請注意,雖然互聯(lián)網連通性是非常可取的,但在一些應用中,如高安全性的應用,也可以使用替代的非互聯(lián)網網絡(例如,本地無線LAN網絡)。
[0097]如(208)所示,多個站點/客戶的Imp通信模塊可以通過互聯(lián)網連接到服務(Imp云服務);映射是很多(客戶)到很多(服務器);服務器資源一般可以共享。[0098]圖5給出了本發(fā)明的Imp通信模塊如何操作的另一概要圖,這次更注重組合視圖,其示出了 Imp通信模塊(152)的物理形式以及在各種任意設備(200)、(201)、(202)中的物理槽。圖5還示出了可選的計算機化設備(300)和固態(tài)存儲卡讀取器(302),在某些實施例中,其可用于配置或編程Imp通信模塊(152)與到服務(207)的網絡連接??商娲?,該配置可通過其他方法,例如光學方法來完成,這將在下面進行論述。
[0099]圖5還示出了到其他設備(304)或服務的互聯(lián)網連接的一個示例。這里,為了簡單起見,先前在圖4中所示的本地網絡(203)、(204)和本地路由器(205)的細節(jié)不再示出,但可假設其也存在于圖5中。
[0100]可以看到,Imp通信模塊(152)往往會插入到其各自的任意設備(200)、(201)、
(202)或可選的固態(tài)存儲卡讀取器(302)的各個槽(306)中。
[0101]這里相同的基本Imp通信模塊(152)可首先被配置為本地網絡配置(例如204,205,未示出)。在一些實施例中,這可以通過使用計算機化設備(300)(例如,配備有存儲卡讀取器302的標準計算機)與服務(207)建立連接(310)來完成,或者再次通過下面將論述的其他方法(例如光學配置方法)來完成。服務(例如,Imp云服務)往往由服務器(312)和數(shù)據庫(314)構成。
[0102]服務器(312)和計算機化設備(300)可通過網絡(310) —起工作以確定合適的網絡配置數(shù)據,從而使所述通信模塊(152)能夠連接到本地網絡(204)和路由器(205),然后連接到互聯(lián)網(206)。出于安全考慮,在本地網絡配置數(shù)據不需要被傳遞到服務器(312)。而服務器(312)可以簡單地驗證本地網絡配置數(shù)據是否正確。可替代地,服務器(312)可以將有助于確定本地配置數(shù)據的軟件以及有助于傳送本地網絡配置數(shù)據的軟件發(fā)送到本地計算機化設備(300),并且將從計算機化設備(300)傳送到存儲卡讀取器(302)或光學輸出設備(例如,顯示屏幕),并且最終到Imp通信模塊(152),但是同樣地,該網絡配置數(shù)據需要不被發(fā)送回服務器(312)。
[0103]一旦Imp通信模塊(152)已被配置有合適的網絡配置數(shù)據,則該Imp通信模塊可被安裝到所選擇的任意設備中,這里為設備(200)。一旦被安裝到任意設備(200)中,所述Imp通信模塊(152)可以讀出任意設備的唯一 ID(151),并且還與服務(207),特別是服務器(312)和數(shù)據庫(314),建立網絡通信會話(316)。在該通信會話期間,Imp通信模塊
(152)可以將其特定任意設備的唯一 ID (151)(這里為ID001)發(fā)送到Imp云服務(207)、月艮務器(312)和數(shù)據庫(314)。然后,服務器和數(shù)據庫可以使用這個唯一 ID作為數(shù)據庫的索引(318),并檢索操作為或作為該特定任意設備(200)的接口所需的合適代碼(320)。這可以被發(fā)送回(316) Imp通信模塊(152),并且該模塊然后可以根據需要,既作為任意設備(200)的網絡接口,又控制任意設備(200)。
[0104]注意,該方案是非常靈活的,并允許將同一 Imp通信模塊(152)從任意設備(200)拆卸,并放置到任意設備(201)或(202)中。當發(fā)生這種情況時,Imp通信模塊可以被配置為檢測唯一標識碼(151)的改變,并再次向Imp云服務207(例如,服務器312和數(shù)據庫314)請求合適的軟件或代碼。
[0105]在Imp通信模塊被配置之后,它就可以作為服務(207)與任意設備之間的網絡接口,或者根據需要可以使任意設備開始與一不同的設備或備選服務(304)建立網絡連接。
[0106]圖6示出了任意設備(170)的一相當奇特但有用的實施例,其特點在于本發(fā)明的Imp通信模塊(這里表示為173,而不是152)可插入的Imp槽。這個示例中的任意設備是標準的烤面包機,但是其增加有機動模具組件。
[0107]對于通常的烤面包機來說,所包括的電子電路(171)是最小的;當面包被插入并且被下拉到烘烤室中時,定時器被啟動,從而啟用加熱元件。在定時器(其調整為褐變控制)到期之后,加熱器自動關閉,烤面包被彈出。在該設備中,沒有微控制器或其他高級智倉泛。
[0108]烤面包機電路還具有用于本發(fā)明的Imp槽、為其供電的電源(174)和機動模具
(172),機動模具(172)可在加熱元件和烤面包的表面之間旋轉,以便選擇性地防止面包的部分從該元件接收熱量。通過在烘烤周期的一部分期間在該元件和面包之間引入太陽圖標,此模具允許例如該太陽圖標可見于烤面包的切片上,其中該太陽圖標對應的部分呈現(xiàn)出比周圍的烤面包部分更淺的褐色。該器件還包含唯一 ID,這里表示為(175),而不是之前的(151),該唯一 ID用來將該設備標識為具有模具的烤面包機。
[0109]為了傳達天氣預報的基礎知識,模具可能有4個圖標;太陽、云、雨、雪以及一個無圖標的部分,當未安裝Imp通信模塊(173/152)且圖標已印之后,可使用該無圖標的部分以確保所有的面包都受到一定烘烤。
[0110]如果沒有卡(173/152),烤面包機像正常一樣運行;模具保持在默認位置(無符號),并且烤面包機簡單地烘烤。然而,當Imp通信模塊(Imp卡)插入時,一系列操作發(fā)生:首先,Imp卡使用唯一 ID芯片(175/151)識別電器,并向(即通過WiFi網絡發(fā)送無線請求至IJ)服務(207),(312),(314)請求合適的烤面包機操作軟件。該服務發(fā)送回虛擬機程序,該虛擬機程序被加載到Imp卡的虛擬機中,并且該程序將Imp卡的電引腳配置為適應該電器的需求,在這種情況下,該需求為:用于“提供烤面包”的數(shù)字輸入和在默認(零)位置的模具,用于定時器設置(褐變控制)的模擬輸入和用以重寫定時器和旋轉模具的數(shù)字輸出。
[0111]然后,Imp卡在幾乎零功率模式下等待面包被插入,這在“提供烤面包”數(shù)字線路上用信號通知。當被看到時,卡向服務(207)發(fā)信號表示它需要為用戶進行天氣預報。該服務獲取并解析針對用戶的注冊地址(例如用戶的物理或IP地址)的本地天氣預報,挑選與當天的天氣最為相關的符號,并將其發(fā)送回烤面包機中的Imp卡,Imp卡的虛擬機程序適當?shù)匦D模具,并且如果需要的話,基于用戶已配置且卡已感測到的褐變設置來旋轉模具,以延長烘烤時間以確保壓印可被接受。
[0112]這個示例盡管還相當稀奇,但也說明了本發(fā)明如何使簡單的任意設備能夠在不過度增大任意設備的成本的情況下以在有趣和新穎的方式進行擴展。
[0113]進一步論述:
[0114]在替代實施例中,本發(fā)明也可以看作是一種在任意設備中嵌入靈活的、可動態(tài)重新配置的Imp控制器模塊的方法,該Imp控制器模塊常常作為具有標準固態(tài)存儲卡的外形的插件模塊,從而為該任意設備增加網絡連通性。這種方法通常使用通信模塊來操作,該通信模塊包括:
[0115]1:處理子系統(tǒng),其維持網絡連接(以能夠與服務交換數(shù)據),并且還在虛擬機環(huán)境中執(zhí)行任意代碼,以控制與它所插入到的設備并與之交互。
[0116]2:通信接口,將所述處理子系統(tǒng)連接到本地網絡,并從本地網絡連接到合適的服務,例如互聯(lián)網服務器(312或304)。[0117]3:與任意設備的柔性電氣接口,可以經常進行動態(tài)重新配置以適應設備的要求。
[0118]4:可選地允許Imp模塊呈現(xiàn)出標準計算機外圍設備的樣子以便容易地由除了該任意設備之外的計算機化設備(如標準的臺式機或膝上型計算機、筆記本、智能電話等)配置的裝置(通常是通信模塊內部運行的軟件代碼和合適的電子開關)。
[0119]如前面所論述的,在一些實施例中,此Imp通信模塊可以是SD(安全數(shù)字)卡、USB棒的形式或者可以很容易地連接到計算機以用于配置目的其它方便的形式。這里,如前所述,將處理系統(tǒng)配置為使得該模塊操作虛擬機(設備相關代碼在該虛擬機中執(zhí)行)可能是有用的。
[0120]使Imp通信模塊采取普通或流行的固態(tài)存儲卡形式的一個附加的優(yōu)點是,這種形式增強了使用者處理Imp模塊的舒適性和熟悉性,而且還為系統(tǒng)提供了標準化的電配合連接器的源。
[0121]如前面所論述的,從電的角度來看,在一些實施例中,Imp模塊可以被配置成檢測它合適被連接到用于配置的計算機上,并將其自身配置成(例如,重新配置其引腳的電性能和功能),呈現(xiàn)為一兼容設備(例如,標準存儲卡),以便該計算機無需任何額外交互即可識別出該Imp模塊。然而,當Imp模塊然后連接到任意設備上時,所述Imp模塊可以識別該設備(通常是通過讀取設備的唯一 ID碼,如前面所論述的),從服務器中加載合適的虛擬機代碼,然后配置或重新配置該Imp模塊的電氣接口以滿足不同應用的要求。因此,例如,當作為存儲卡時,一個特定引腳可以被配置為僅用于數(shù)字I/O模式。但是同時作為到任意設備的接口,同樣的引腳可以重新配置為用于模擬輸入或輸出。
[0122]再次,如前面所論述的,從網絡連通性的角度看,在本地網絡環(huán)境已經被感測到并且Imp通信模塊已經被適當?shù)嘏渲?通常與遠程互聯(lián)網服務的協(xié)助下)之后,網絡代碼然后優(yōu)選地以將Imp網絡代碼與特定于Imp任意設備的代碼相隔離的方式在通信模塊內的至少一個處理器上執(zhí)行。這可以通過在至少一個Imp處理器上的Imp虛擬機或沙盒中運行特定于Imp任意設備的代碼來完成。在這里,使用適當?shù)恼Z言,如前面所論述的Lua和Squirrel,可能是有用的。
[0123]因此,在Imp通信模塊中的至少一個處理器上運行的Imp虛擬機將通常用于將特定于Imp任意設備的代碼(在此Imp虛擬機上運行)與Imp通信的模塊關鍵網絡代碼隔離。這種布置具有另外的好處在于它允許對Imp通信模塊的設計進行更新,而無需更新特定于任意設備的代碼。也就是,不管Imp通信模塊的其余部分是什么版本級別,它均可以運行相同的標準化虛擬機,并且因此特定于Imp任意設備的代碼與在Imp通信模塊的其余部分的任何變化隔開。此特定于任意設備的代碼當然會由在Imp通信模塊的處理器上執(zhí)行的網絡代碼提供連通性服務。但是,該網絡代碼不需要由虛擬機來運行,而是可以在虛擬機外運行,但可以可選地依賴于至少一些虛擬機的功能,以便為特定于任意設備的代碼提供標準化接口。
[0124]示例:
[0125]圖7示出了 “MP”通信模塊(700)(這里,為SD卡形式),“MP”通信模塊(700)連接到任意設備(在這里是光開關(704))中的“Imp槽”(702)的示例。在此背景下,示出了基于圖形用戶界面和web的編程IDE (706),其允許用戶使用標準的web瀏覽器快速地配置Imp云服務來處理該具體的Imp/設備組合,以及使得該具體的Imp使能開關能夠控制世界上任何地方的其他Imp使能設備。
[0126]圖8示出了如何配置Imp云服務的更多的細節(jié)。(800)顯示基于web的IDE的圖形“框和連接箭頭”編程模型,其使得用戶能夠使用標準的web瀏覽器對Imp云服務進行簡單地編程。(802)和(804)中示出了用戶可用的各種命令的一些細節(jié)。這些命令可以包括通知系統(tǒng)何時電力比平時更便宜的(即非高峰小時率)的命令,在有限或無限時段內周期性開關設備的命令,格式化消息的命令,對在線“ IMP”設備進行計數(shù)的命令,發(fā)送數(shù)據到pachube.com(現(xiàn)在為Cosm)即互聯(lián)網web連通性服務的命令,將Imp輸入數(shù)據與各種設置進行比較的邏輯命令,發(fā)送RSS提要的命令,接收和發(fā)送(例如,用于移動電話的)SMS消息的命令,從外部網頁控制Imp設備的命令,依此類推。
[0127]圖9示出了如何對Imp設備進行光學配置以用于無線網絡接入的示例。因為這種光學方法使用閃爍光源,并且因為它有助于將Imp與網絡連接起來,它偶爾被稱為“眨眼(blinkup) ”步驟。這里,“Imp”通信卡(在這里為SD卡形式)進一步被配備以可見光光電檢測器,該光光電檢測器被連接到Imp微處理器(見圖10)。在圖9中(900),此Imp設備被放置在任意設備(904)的槽(902)中,在這種情況下該槽(902)是可切換的交流電源插座。在(906)中,用戶對其智能手機(在這里為蘋果iPhone4)進行配置,從而使該智能手機針對通過本地WiFi連接到互聯(lián)網的網絡連通性對Imp設備進行光學配置。
[0128]在這個示例中,通信建立使用以下協(xié)議:
[0129]?同步8個字節(jié)的OxAA(黑白交替屏幕):允許校準亮度和時間。
[0130].0Χ2Α數(shù)據前導字節(jié)
[0131].指示(后續(xù)的)總數(shù)據長度的字節(jié)
[0132]?數(shù)據包:一個或多個以下格式的數(shù)據包:1字節(jié)類型-1字節(jié)長度-長度字節(jié)的數(shù)據
[0133].CRC:對在總長度字節(jié)和用于錯誤檢驗的CRC之間發(fā)送的數(shù)據的16位CRC。
[0134]為什么要使用這樣的光學配置方法?如先前在通過引用并入本文中的母案臨時專利申請61/583,299中所論述的,聯(lián)網設備的一個問題是將它們設置完備可能是復雜的。為確保安全操作,聯(lián)網設備通常需要知道一些私鑰(對于WIFI網絡,最少要知道網絡名(SSID)和網絡密碼)。
[0135]各種現(xiàn)有技術的方法被設計為改進這種網絡配置的經驗,包括WPS(WiFi保護設置),它在WiFi接入點和設備上均使用一種特殊的無線模式和WPS使能按鈕,以便于接入信息的空中交換。雖然這種現(xiàn)有技術方法的硬件實現(xiàn)可以是很簡單的(只需要在設備上增加一個按鈕),但問題是,對于設備廠商來說,為了確保與所安裝的基本WiFi接入點的最大兼容性,聯(lián)網設備還必須支持手動輸入網絡配置數(shù)據(例如,SSID和密碼)的較舊方法。
[0136]由于需要輸入網絡配置數(shù)據(例如,SSID和密碼信息),實現(xiàn)這樣的網絡方案可能是復雜和昂貴的。最起碼,往往需要多個按鈕和顯示設備。對于某些設備,這可能是可以接受的,因為它們已經具有可以允許這樣的配置信息被輸入的用戶界面,但往往用戶體驗可能是令人沮喪的,因為密碼可能很長并且輸入起來比較復雜,而屏幕可能較小且難以閱讀。
[0137]一些廠商,尤其是具有尚無用戶界面來接受SSID和密碼輸入的設備的廠商,通過在其設備上納入USB插頭來解決這個問題,以允許將其設備連接到PC進行配置。這提高了用戶的體驗,但同時需要電纜,并且需要再PC上加載專用軟件,這導致了更大的成本和復雜性。
[0138]為了減輕這種配置方案的負擔,在本發(fā)明的一些實施例中,各種Imp通信模塊可以另外被配備以連接到處理器的光電檢測器。當完成時,可使用具有光學顯示屏幕或其它光學設備的通用計算機化設備來傳遞用于聯(lián)網設備的初始設置信息。
[0139]各種方法可以被用來產生調制光信號以對Imp通信模塊進行光學配置。在一些實施例中,計算機化設備(例如,智能電話或平板電腦)可以用來(通常通過智能手機的顯示屏)生成用以發(fā)送網絡配置和/或設置信息的隨時間變化的光圖案。因為這樣的智能手機和平板設備現(xiàn)在幾乎無處不在,因此這種方法具有充分利用用戶既已經擁有并熟悉的設備的優(yōu)勢。智能手機和平板電腦的一個附加優(yōu)點是,因為它們是手持的,因此它們可以很容易地根據需要被拿到Imp光學傳感器(例如光電檢測器)附近。
[0140]這種光學配置方法的一個額外的優(yōu)點是,需要被內置到Imp通信模塊中的Imp光學傳感器(例如,光電檢測器)的設備往往很便宜,比任何連接器都便宜,而且非常堅固。這種光電檢測器不需要如連接器或按鈕通常所需要的額外的保護電路。事實上,即使當Imp通信模塊被安裝在可能已經具有能夠被用于SSID和密碼輸入的用戶界面的任意設備中時,本發(fā)明的光學編程方法仍然比其他方法具有更為顯著的用戶友好性。
[0141]在該方法的一個實施例中,如圖10所示,光學設備(光電檢測器,光電傳感器)包括但不限于光電晶體管或光電二極管/簡單的光傳感器等中,被耦合到Imp通信模塊設備的處理器。這里沒有必要使用一個紅外敏感的光電檢測器(但也可以使用紅外敏感的光電檢測器)。當然也可以使用光(可見光)敏感的光電檢測器。因此,在本說明書中所示的示例中,Imp設備光電檢測器對可見光光譜(例如,由計算機化移動設備的顯示屏幕產生的光譜)敏感。可替代地,在其它實施例中,光電檢測器Imp可由濾光器材料進行包裝或以其他方式覆蓋,以使光電檢測器只對某些波長敏感。
[0142]在此處所示的Imp原型設備中,使用了無內置濾光器的光電檢測器,因為這允許Imp設備被由計算機化設備顯示屏幕(例如,智能電話,平板電腦等)所產生的可見光容易地編程。
[0143]需要在典型的Imp網絡配置設置(例如Imp通信模塊配置會話)交易中發(fā)送的網絡配置信息的量相對較小,通常小于100字節(jié)。因此,可以使用相對簡單的編碼方法來發(fā)送該小量的數(shù)據。作為一個非限制性的示例,這樣的網絡配置數(shù)據可以由最高達32個字節(jié)的本地WiFi網絡的SSID (網絡名)和最高達32個字節(jié)的密碼以及各種類型的通信開銷(前導字節(jié)、控制字節(jié)、校驗和,等等)構成。
[0144]智能手機經常以恒定的頻率(如60赫茲)刷新自己的顯示屏幕(例如,一個顯示屏幕幀每1/60秒刷新一次)。在一個實施例中,發(fā)射設備可以在每幀更新或刷新周期對一個比特的數(shù)據進行編碼。雖然不旨在進行限制,這種類型的方案具有的優(yōu)點是,它允許一個計算機化設備(如智能電話)的整個顯示屏幕被用來發(fā)送數(shù)據。這又可以更容易地對齊智能手機(發(fā)送計算機化設備)與Imp通信模塊上的光電檢測器(這里作為光學接收器)。
[0145]因此,假設使用智能手機或平板電腦的顯示屏幕作為光學發(fā)送器,那么假設每秒約60幀的恒定顯示屏幕更新速率,智能手機能夠以每秒60比特的數(shù)據速率發(fā)送配置數(shù)據。因此,使用這些方法,將大約需要8.5秒來發(fā)送64字節(jié)的網絡配置數(shù)據。一旦網絡配置已經建立,也可以使用該方法來發(fā)送其他信息,如可以用作針對其他用途的軟件令牌的各種數(shù)據塊。
[0146]對于無法達到每秒60幀的刷新速率的智能手機或其他發(fā)光器件,可相應地降低數(shù)據速率。類似地,對于可以維持每秒更多幀的發(fā)光器件,可提高數(shù)據速率。
[0147]通常,附加數(shù)據,例如確立定時和光級度信息的頭部,可以在數(shù)據之前被發(fā)送,長度字節(jié)和校驗和或CRC可以在數(shù)據之后被發(fā)送,以確保無損地到達的數(shù)據也將被發(fā)送。
[0148]如前面所論述的,作為一個非限制性的示例,在一個實施例中,可以通過使智能電話顯示屏幕或其它光源(例如,由另一網絡連接的Imp或“在中間的MP”控制的光源)發(fā)送32個循環(huán)的交替的白/黑(二進制1/0)光學圖案,來啟動頭部。這個前導允許Imp設備確定發(fā)送的開始,并且也允許建立同步。在這個前導之后,光學發(fā)送器隨后發(fā)送單個“魔術字節(jié)”,例如十六進制0X2A十進制42,以表示實際數(shù)據包有效載荷(即網絡配置數(shù)據)的開始。該系統(tǒng)還可以發(fā)送長度字節(jié)來表示跟隨的數(shù)據的長度。然后可跟隨以由長度字節(jié)指示的長度的數(shù)據,且在一些實施例中,可以使用(使用對長度字節(jié)和數(shù)據字節(jié)的CRC-16計算出的)2個字節(jié)的CRC的數(shù)據或其他錯誤檢測和/或校正碼來結束發(fā)送。
[0149]為了進一步減少發(fā)送時間,使用灰度或均勻顏色(如果Imp設備具有顏色敏感的光電檢測器)來提高數(shù)據速率,從而在每個顯示屏幕刷新期間的時間內發(fā)送多于I比特。
[0150]因此,例如,所述光學配置系統(tǒng)可以使用兩個光級度來指示每幀的單個比特的信息(I幀=黑色或白色=O或I比特的選擇)。如果除了黑色和白色之外還使用兩個灰度級,則每幀可以傳送2比特的信息(級別0,I, 2,3 = 二進制00,01,10,11)。利用8個強度級別,該系統(tǒng)在每幀可傳送3個比特,等等。這會導致數(shù)據的傳遞速度加快到2或3倍。
[0151]為了執(zhí)行設置操作,用戶可以經常使用此目的而設計的app (軟件應用)在他們的移動設備上輸入必要的細節(jié)??商娲?,移動設備上的發(fā)送應用app可以被設計為從該設備自己的無線設置自動提取必要的細節(jié)。這顯示在圖9 (906)中。然后,用戶按下開始按鈕,這將提示用戶將移動設備的屏幕轉向光學設備,并啟動可聽的倒計時。
[0152]然后,用戶將移動設備屏幕拿到Imp通信模塊上的光電檢測器(例如,接收器的傳感器)附近,最好盡可能地接近,以最小化環(huán)境光所造成的任何信號失真。這顯示在圖1IA (904),(906)中。
[0153]然后,用于Imp通信模塊的網絡配置數(shù)據被光學地發(fā)送。當傳輸完成后,該app可以通過發(fā)出指示外城的另一移動設備提示(例如,音頻“嘟”)來表示完成。這是對將移動設備屏幕拿到Imp附近的用戶有用的,因為此時該用戶可能難以直接閱讀屏幕。
[0154]然后,Imp通信模塊可以驗證網絡配置,并且可選地通過其他可見指示器(這里,Imp通信模塊為此目的可能有一內置的發(fā)光二極管)來指示成功,或者通過移動設備的UI利用新建立的網絡連接向服務器發(fā)送“連接成功”的信息(該服務器隨后將該消息中繼到用戶拿著的移動設備(例如智能電話))來指示成功。
[0155]圖10示出了圖9中的Imp (900)和圖9中的智能電話(906)的示意圖。
[0156]圖1lA示出了用戶將智能手機(906)拿到AC電源開關的下部上的Imp,這樣就產生一調制光信號,該調制光信號將本地網絡配置傳送到Imp。然后,用戶將一串燈(1100)插入Imp使能的AC電源開關,以便稍后表明該系統(tǒng)在操作中。在這里,交流電源開關(904)任意設備的底槽上的Imp (900)已部分地從槽中取出,以便更好地顯示AC電源開關已經MP使能。[0157]用于任意設備制造的光學網絡配置和軟件令牌方法
[0158]上面描述的通常被稱為“blinkup”方法的光學配置方法,除了有助于用于可拆卸Imp或嵌入任意設備內部的Imp的網絡配置過程,也可以用于其他目的。一個重要的附加用途是協(xié)助制造配備有Imp槽或配備有嵌入式Imp的任意設備。
[0159]在一個實施例中,本發(fā)明也可以是至少自動配置任意非聯(lián)網設備的軟件網絡接口(例如,外部連通性路徑)的方法。這里,除了例如網絡配置之外,光學方法還可用于在制造過程中監(jiān)視任意設備的產量,以及以促進將唯一 ID碼(其與任意設備本身相關聯(lián),或者被存儲在嵌入式Imp的存儲器中)與用于操作該類型的任意設備的適當代碼(軟件)進行關聯(lián)的過程。
[0160]如前面所論述的,可拆卸Imp來說,包含唯一 ID碼的芯片通常將通過Imp槽的方式被制成任意設備的電路的一部分。然而,在使用嵌入式Imp的情況下(即,其中Imp通信模塊被焊接到任意設備的電路上,或被放置在內部槽中,使得終端用戶不會想要去移動該Imp),這種唯一 ID碼是沒有必要的(但如果需要的話,也可以使用)。相反,為了減少費用,唯一 ID碼本身可以被放置在不可拆卸的(即嵌入式)Imp通信模塊的存儲器中。由于Imp模塊被固定在任意設備上,這將當然,因此不可逆轉地將唯一 ID碼與該特定的任意設備進行關聯(lián)。
[0161]也應當清楚的是,當Imp擬通過例如焊接嵌入到任意設備電路中時,不一定需要將Imp電路包圍一外殼,例如SD存儲卡的情況。相反,可以直接使用Imp電路模塊,而無需這樣的外殼。
[0162]因此,在一般情況下,無論是任意設備或還是通信模塊都將具有能夠發(fā)送唯一標識數(shù)據的唯一 ID存儲記憶設備。對于嵌入式Imp來說,該唯一 ID存儲記憶設備可以簡單地為標準Imp固態(tài)存儲器,但是,當然,唯一 ID碼將優(yōu)選被放入嵌入式Imp通信模塊的固態(tài)存儲器的受保護部分中,例如,寫保護部分。
[0163]為了協(xié)助任意設備的制造和/或將唯一 ID碼與合適的軟件進行關聯(lián)的過程,除了使用基于MP光電檢測器的光學配置界面來將無線網絡配置數(shù)據加載到設備(從而允許Imp通信接口與計算機網絡建立無線網絡連接)之外,本發(fā)明還可以使用基于軟件令牌的方法來幫助將唯一 ID與往往在任意設備的整個壽命中使用的代碼進行關聯(lián),以確保適當類型的軟件代碼被加載到任意設備的Imp。
[0164]軟件令牌(硬件識別令牌)本身不需要過于復雜。它可以是任何一組比特或字節(jié),例如一個標識編碼,字母數(shù)字代碼,等等,其用來表示到底什么類型的軟件代碼應該在與該特定的任意設備相關聯(lián)的Imp上運行。因此,舉例來說,由“Toastermatic公司”為烤面包機版本I制作的軟件令牌可以是字母數(shù)字串,如:“toaster vltoastermatic inc”,或者可以是可被軟件服務器(例如,基于遠程互聯(lián)網的服務器)用來將軟件令牌與特定類型的代碼(例如,toaster Vl代碼)進行鏈接的數(shù)字。軟件令牌也可以比這更復雜,即可以有不同的安全比特或數(shù)字,可以有以加密形式存儲的信息,等等,只要該令牌執(zhí)行將任意設備的電路與特定的唯一 ID碼進行關聯(lián)以校正對應類型的軟件代碼的目的。
[0165]通常,軟件令牌或硬件識別令牌不必用于在任意設備首次連接到服務器時識別該任意設備之外的任何目的。它使服務器能夠執(zhí)行的關聯(lián)步驟,但不需要被用于其他目的。一旦執(zhí)行了初始連接和標識,該服務器存儲唯一 ID與硬件類型之間的關聯(lián),而令牌不會再被引用。
[0166]在一個優(yōu)選的實施例中,為了提高安全性,該軟件令牌可以是隨機數(shù),例如64位的隨機數(shù),而不是顯示為未加密形式的特定設備名稱或固件名稱的字符串。但是,也可以其他的數(shù)字作為軟件令牌。
[0167]所有的Imp —般都配置了自己的唯一媒體訪問控制(MAC)地址。這個MAC地址唯一地標識Imp網絡地址,并且可以例如是48位或64位的代碼。在一些實施例中,當正在使用Imp登記卡時,此Imp的MAC地址本身可以作為軟件令牌(硬件標識令牌)。這里,例如,制造商可以通過聯(lián)系Imp控制服務器,輸入該Imp的MAC地址(假設這個地址印在Imp卡的背面,或以其他方式提供),并告訴服務器:具有特定MAC地址的Imp將被用作特定任意設備(例如,烤面包機)的Imp登記卡,來將可隨意拆卸的Imp指定為Imp登記卡。然后,該服務器可以把MAC地址視為軟件令牌的類型,并進行相應處理。
[0168]在一些實施例中,也可以使用其他類型的令牌來啟用其他類型的關聯(lián),例如,將任意設備與特定的用戶(例如,用戶關聯(lián)令牌)進行關聯(lián)。這里,例如,如果烤面包機廠商希望特定設備(例如烤面包機)與特定的用戶進行關聯(lián),則也可以設計被用戶用來配置任意設備的智能手機app,以提供表示該特定用戶的用戶關聯(lián)令牌,并且這個用戶關聯(lián)令牌也可以被光學地發(fā)送到Imp。
[0169]這樣一來,當任意設備連接到Imp服務服務器時,用戶關聯(lián)的令牌可以例如被傳遞到任意設備廠商的服務器上,從而使任意設備廠商知道該任意設備(在這里,仍為烤面包機)屬于哪個特定的用戶??久姘鼨C廠商的服務器便擁有了存儲烤面包機的唯一 ID和特定的用戶帳戶之間的關聯(lián)的選項,盡管更一般的Imp服務服務器可能不會去跟蹤此信息。
[0170]在軟件令牌(硬件標識令牌)已被(通常被任意設備制造商)初始地用來將特定唯一的ID碼與特定類型的軟件代碼進行關聯(lián),且這種關聯(lián)隨后被存儲在服務器中之后,軟件令牌則不再必須使用。相反,服務器然后可以將唯一 ID碼直接與該類型的代碼進行關聯(lián)。在制造過程中進行的基于軟件令牌的關聯(lián)過程的基本邏輯可以是這樣的:
[0171]1:軟件令牌最初與適當類型的代碼關聯(lián)(通常在服務器中)
[0172]2:制造商將任意設備(或者嵌入式Imp/任意設備)唯一 ID碼與軟件令牌進行關聯(lián),并且將此關聯(lián)發(fā)送到服務器??商娲?,制造商可作出登記設備(例如Imp,在中間的Imp,登記Imp)和硬件類型之間的關聯(lián),并且系統(tǒng)可以生成引用該關聯(lián)的軟件令牌。
[0173]3:服務器,知道該軟件令牌與適當類型的代碼相關聯(lián),并知道唯一 ID碼與軟件令牌相關聯(lián),從而可以制作邏輯連接,并存儲唯一 ID碼因此與適當類型的軟件代碼相關聯(lián)的記錄。
[0174]各種基于軟件令牌的方法可用于將唯一 ID碼與適當類型的軟件代碼進行關聯(lián)。
[0175]在一個非常適合于嵌入式Imp通信模塊的情況的實施例中,在前面所論述的光學配置方法除了發(fā)送無線網絡配置數(shù)據之外,也可以用來將軟件令牌加載到嵌入式Imp的存儲器。其結果是,當嵌入到任意設備的Imp與適當服務器建立連接時,除了向服務器發(fā)送所述嵌入式Imp/任意設備組合的唯一 ID碼之外,該軟件令牌也可以被發(fā)送到服務器。該服務器可以針對許多不同類型的不同任意設備處理多種類型的不同軟件代碼,并且通常在特定軟件令牌與特定類型的任意代碼之間進行關聯(lián)之前配置該服務器。
[0176]其結果是,當服務器看到到來的來自特定嵌入式Imp/任意設備組合的軟件令牌和唯一 ID碼對時,該服務器知道到來的軟件代碼與什么類型的代碼相關聯(lián),因此可以作出唯一 ID碼與適當類型的軟件之間的邏輯關聯(lián),然后將此邏輯關聯(lián)存儲在存儲器中以供將來使用。這將來使用可以包括用于軟件更新等。
[0177]例如,考慮一個以100個設備為一組來制造任意設備的生產工廠。所有這些任意設備可以都具有嵌入式Imp,并且對于為任何類型的任意設備生產的任何嵌入式Imp,這些嵌入式Imp可以是相同的(即,相同的硬件,相同的初始軟件套件),例外僅在于每個嵌入式Imp可以具有其自己的存儲在存儲器中的唯一 ID碼。
[0178]一旦Imp被嵌入到一任意設備中,則該唯一 ID碼隨后與該任意設備相關聯(lián)。但是,如何告訴Imp軟件服務器該唯一 ID碼與烤面包機相關聯(lián),而不與某其它設備(例如,燈開關)相關聯(lián)? Imp控制服務器如何知道向該特定的烤面包機嵌入式Imp發(fā)送合適的烤面包機代碼?
[0179]為此,烤面包機制造商將與Imp軟件服務器的管理者一起工作,并且他們將設立烤面包機軟件令牌,并且將合適類型的烤面包機軟件代碼(其與烤面包機軟件令牌相鏈接)存放于服務器處。注意,令牌與該類型的代碼的關聯(lián)可能偶爾是復雜的,因為多種類型的硬件可能共用相同的軟件代碼。這里,關鍵是形成唯一 ID與硬件類型之間的關聯(lián),并且硬件類型隨后可規(guī)定被發(fā)送到Imp的軟件。
[0180]嵌入式Imp通信模塊可以被初始配備以設置代碼,該設置代碼指令嵌入式Imp在初始光學配置數(shù)據組中除了包含無線網絡配置信息之外還將包含軟件令牌。該初始設置代碼將指令嵌入式Imp在進行網絡連接之后與服務器建立連接,并且向服務器發(fā)送其各自的唯一 ID碼和所接收的軟件令牌。該聯(lián)網服務器隨后可存儲該唯一 ID標識數(shù)據(唯一 ID碼)與合適類型的軟件代碼之間的關聯(lián)的記錄。
[0181]該初始設置代碼可選地還可以指令嵌入式Imp從服務器下載其他代碼,例如任意設備制造測試代碼和/或任意設備操作代碼。注意,該設置代碼因此是非常通用的,并且擬嵌入到任何類型的任何任意設備的任何嵌入式Imp由此可利用相同的設置代碼進行初始配置。這極大地提高了制造靈活性,并且極大地降低了成本,因為嵌入式Imp模塊可以作為一完全通用或相同的產品根據需要以數(shù)以百萬的量進行生產(可能的例外在于,每個嵌入式Imp將存儲其自身的唯一 ID碼)。
[0182]返回到制造工廠示例,制造商可以同時測試并配置他的100個“烤面包機”任意設備的組。為此,制造商可以設置由軟件控制的光源(其自身可以由“在中間的imp”進行控制),(根據需要)一次性開啟所有的烤面包機,并且將光源編程為向100個烤面包機的組發(fā)送網絡配置數(shù)據和“you are a toaster vl”類型的軟件令牌。該烤面包機的組使用其嵌入式Imp和設置代碼,可獲取光學發(fā)送的網絡配置數(shù)據、光學發(fā)送的軟件令牌,并且利用一系列消息(例如,Imp 22359, “I am a toaster vl”, Imp22360, “I am a toaster vl”...(Imp22459, I am a toaster vl”)與服務器接觸。隨后,該軟件服務器可將該關聯(lián)存儲在存儲器中,并且又將合適類型的toaster vl測試或操作代碼發(fā)送到該烤面包機組。
[0183]該系統(tǒng)還可以幫助向制造商和制造商的客戶提供有用的制造信息。例如,假設服務器初始將烤面包機測試代碼發(fā)送回該100個烤面包機任意設備的組。該100個烤面包機的組可以對自身進行測試,并且也許98 %的烤面包機向服務器報告“成功”,并且2 %的烤面包機可能向服務器報告“失敗”。該信息可被制造商和制造商的客戶(例如,已與制造商簽訂協(xié)議以購買大量烤面包機進行轉售的公司)用于質量保證和計劃目的。在烤面包機生產完畢時雙方可以立即知道,并且可以知道已有多少件通過他們的測試。這可以極大地協(xié)助后續(xù)的計劃和過程優(yōu)化。
[0184]將系統(tǒng)配置為使得當測試成功時將軟件令牌-唯一 ID關聯(lián)僅存儲于服務器中,往往將是有用的。這樣一來,未通過測試的任意設備將根本不會獲得任何操作軟件。這允許有缺陷的任意設備(如果它們故意或非故意地“逃出”工廠)被更容易地區(qū)分開來。
[0185]相同的基本方案還可以用于使用可拆卸的Imp的配備有槽的任意設備,唯一的區(qū)別在于,這里,唯一 ID碼將由Imp從任意設備獲取,而非從Imp自身的固態(tài)存儲器獲取。因此,以上考量、特征和益處同樣適用于使用可拆卸的Imp通信模塊的配備有槽的任意設備。
[0186]還可以實現(xiàn)軟件令牌方法的一個替代實施例,其非常適合于可以在配備有槽的任意設備之間進行切換的可拆卸的Imp通信模塊,并且其中,由此,唯一 ID碼作為任意設備電路的一部分(這里,其可以為作為任意設備電路的一部分的Imp槽)。
[0187]在該替代實施例中,雖然可以可選地使用光學網絡配置方法,但是也可以作為代替地,通過使用便攜式“Imp登記卡”來提供軟件令牌以及可選地提供網絡配置信息。該便攜式Imp登記卡將被配置有設置軟件、合適的軟件令牌,并且可選地甚至配置有網絡配置信息,以便制造商至少不需要在制造工廠中使用光學配置。當制造工廠任意設備從組裝線上流出時,Imp登記卡(或多個卡,可使用任何數(shù)量的卡來加速制造)可以被暫時地插入到制造工廠任意設備中,這里仍可能為烤面包機。該可能被預配置為用于本地無線網絡接入的登記卡將在每個任意設備離開組裝線時,讀取該每個任意設備的唯一 ID碼,并且將該唯一 ID碼與存儲在登記卡中的軟件令牌一起報告給服務器。隨后,服務器可以像之前那樣制作該特定任意設備的唯一 ID碼、軟件令牌與軟件令牌類型的軟件代碼之間的邏輯關聯(lián),并且再次存儲特定任意設備的唯一 ID碼由此連接到合適類型的軟件代碼的記錄。根據需要還可以可選地進行另外的任意設備測試,并且將結果報告給服務器。一旦完成之后,可以將Imp登記卡從該特定的任意設備中拔出,并且再次使用該Imp登記卡來登記離開制造商的組裝線的下一個任意設備。該過程可以相對較快,在每分鐘在Imp服務器上登記一新的任意設備的量級上。
[0188]可替代地,該Imp登記卡方法通常對于任意非聯(lián)網設備具有能夠容納可拆卸Imp通信模塊的槽的情況是最佳的,并且其中任意設備(經常通過嵌入式Imp插槽)具有能夠發(fā)送唯一標識數(shù)據的唯一 ID存儲記憶設備,該Imp登記卡方法可以提供如下軟件令牌:
[0189]操作者通常將第一可拆卸Imp通信模塊(登記Imp,在登記Imp內部固態(tài)存儲器中包含合適的軟件令牌)插入到任意設備的Imp槽中。登記Imp (經常被預配置有無線網絡配置數(shù)據)將與聯(lián)網服務器建立網絡連接,并且將任意設備的唯一 ID碼和登記軟件令牌發(fā)送到聯(lián)網服務器。這允許聯(lián)網服務器記錄該特定的任意設備的唯一 ID碼與由登記Imp提供的軟件令牌之間的關聯(lián)。
[0190]例如,如果任意設備再次為烤面包機,則登記Imp可以攜帶將登記Imp標識為烤面包機登記Imp的軟件令牌,并且服務器可以識別出任意設備的唯一 ID應當與烤面包機類型的軟件代碼相關聯(lián)。
[0191]因此,該軟件令牌可選地可被聯(lián)網服務器用來選擇操作Imp通信模塊的類型的代碼。在該選擇之后,聯(lián)網服務器通常將存儲唯一 ID與適合于與具有該唯一 ID的任意設備一起使用的類型的代碼之間的關聯(lián)的記錄(或將該記錄發(fā)送到另一服務器)。
[0192]在該登記之后,通常在第一登記Imp卡從任意設備的槽中拔出之后,任意設備通常將會被配送給客戶。
[0193]例如,當客戶隨后使用第二可拆卸Imp通信模塊(即任何可拆卸Imp,其通常在其內部固態(tài)存儲器中將不包含軟件令牌)將其插入到任意設備槽中時,該第二 Imp通信模塊(通常在可選的光學網絡配置步驟之后)可以包含來自任意設備的唯一 ID,并且將其發(fā)送到聯(lián)網服務器。
[0194]該聯(lián)網服務器又可以使用該唯一 ID來選擇操作該第二可拆卸Imp通信模塊的類型的代碼。如之前那樣,為此,該服務器將記錄該任意設備的唯一 ID與為此的合適類型的軟件代碼之間的關聯(lián)。
[0195]無論Imp是可拆卸Imp還是嵌入式Imp,針對所有基本光學配置方法軟件令牌方法的共同點在于,各種方法使用無線網絡連接,并且具有唯一 ID和/或軟件令牌,以加載操作Imp通信模塊的代碼。
[0196]進一步地,作為普通要素,唯一 ID數(shù)據和/或軟件令牌被聯(lián)網服務器用來選擇操作通信模塊的類型的代碼,并且其中,該聯(lián)網服務器還存儲唯一 ID數(shù)據與用來運行該類型的任意設備的合適類型的軟件代碼之間的關聯(lián)的記錄。
[0197]進一步地,作為另一普通要素,當通過網絡向Imp通信模塊發(fā)送針對任意設備的命令或數(shù)據時,這些命令或數(shù)據由運行合適類型的代碼的至少一個Imp處理器來解釋。通常,該至少一個處理又將發(fā)送控制信號到任意設備的電路。
[0198]作為補充或替代地,當來自任意設備電路的命令或數(shù)據被發(fā)送到所連接的Imp通信模塊時,這些命令或數(shù)據由運行合適類型的軟件代碼(例如,軟件程序)的Imp處理器來解釋,并且,處理器根據需要又使用Imp通信接口將這些命令或數(shù)據發(fā)送到各個網絡目的地。
[0199]圖1lB示出了 “Imp登記卡”和軟件令牌如何用于創(chuàng)建唯一 ID與針對給定任意設備的合適類型的軟件代碼之間的關聯(lián)。
[0200]在圖11中,“烤面包機”任意設備的制造商可以通過與服務器(312)的操作者一起工作來開始該過程,設立適當?shù)摹翱久姘鼨C”軟件令牌,并且往往還將與該特定令牌相關聯(lián)的“烤面包機”類型的軟件代碼的副本存放于服務器。該制造商(或其他方)隨后可通過例如通過使用互聯(lián)網瀏覽器(1120)通知服務器(312)制造商打算使用該Imp作為登記Imp,來將可拆卸Imp (1122)配置為“烤面包機登記Imp”。該制造商可以例如讀取Imp的MAC地址(其往往印刷在Imp的背面上),通知服務器(312)該制造商希望作用于什么類型的任意設備(例如,烤面包機)。該服務器(312)隨后可以使用該特定Imp的MAC地址作為軟件令牌,并且將該MAC地址與合適的任意設備硬件類型和代碼類型相關聯(lián)。該服務器還可以根據需要下載任何合適的任意設備測試或設置軟件到該登記Imp (1122)上。
[0201]注意,在任何任意設備登記完成之前,如(1124)所示的服務器的存儲器(14)的狀態(tài)為使得雖然軟件令牌“烤面包機”與“烤面包機硬件”相關聯(lián),并且因此與“烤面包機類型代碼”相關聯(lián),但是也可能并沒有任何任意設備唯一 ID與烤面包機軟件令牌或烤面包機類型代碼相關聯(lián)。然而,假設服務器(312)和存儲器(314)處理多種類型的任意設備(例如,燈開關1126),則與燈開關(1126)相關聯(lián)的其它唯一 ID碼(例如ID:00η)可能之前已經與軟件令牌和適合于它們的設備的類型的代碼相關聯(lián)。
[0202]在該示例中,制造商可以通過首先將登記Imp(1122)插入到烤面包機(1128)中來開始登記烤面包機任意設備(1128)和(1130)。該登記Imp將讀取烤面包機的唯一ID(ID:001),與服務器(312)建立無線網絡連接,并且將其與烤面包機軟件令牌(例如,登記Imp(1122)的MAC地址)一起發(fā)送到服務器。隨后,該制造商可以將登記Imp (1122)從設備(1128)中拔出,并且將其插入到下一個設備(1130)中。再次,登記Imp將該設備的唯一 ID碼(這里為:ID:002)與烤面包機軟件令牌一起發(fā)送到服務器。這些操作的最終結果然后可以如(1132)被存儲在服務器的存儲器中。服務器現(xiàn)在知道任意設備ID001已被登記為烤面包機,并且任意設備ID002也已被登記為烤面包機。一旦登記Imp(1122)已被拔出,并且烤面包機(1128)和(1130)被發(fā)出到該區(qū)域,那么無論何時當新的Imp被插入到烤面包機中時,服務器將能夠讀取唯一 ID,并且根據需要將合適的烤面包機代碼和數(shù)據發(fā)送到控制這些任意設備的Imp。
[0203]用于嵌入式Imp的軟件令牌的一般原理是非常相似的,除了對于嵌入式Imp來說,軟件令牌可以通過相同的光學方法傳遞到嵌入式Imp,該光學方法還可以用來對嵌入式Imp進行網絡接入的配置。因此,Imp登記卡不是必需的,相反,軟件令牌可以通過光學“眨眼”的方法來傳遞。在這種情況下,軟件令牌很有可能不是MAC地址,而可能是某些其它比特序列,例如之前論述的64位隨機數(shù)。
[0204]圖12示出了用戶使用基于web瀏覽器的圖形編程系統(tǒng)來使Imp云服務(1200)將圖7中的Imp使能燈開關(704)配置為現(xiàn)在控制(1202) Imp使能AC電源開關(904)的操作。
[0205]這些基本方案的其它變型也是可行的。
[0206]對于擁有Imp槽的任意設備,替代的過程為:
[0207]1.將登記Imp(被服務器已知為在工廠中用于將唯一設備ID與硬件類型相關聯(lián)的Imp)插入到新的任意設備中。
[0208]2.登記Imp使用先前存儲在其非易失性存儲器中的本地WiFi配置參數(shù)或證書來建立與服務器的連接。
[0209]3.服務器向登記Imp發(fā)送適合于該設備的工廠測試軟件,工廠測試軟件在Imp虛擬機(VM)軟件環(huán)境中運行。
[0210]4.運行測試軟件。如果測試(檢查任意設備的功能)通過,則測試軟件告訴服務器,設備通過,并且服務器然后存儲設備的ID與硬件類型之間的關聯(lián),以便將來該設備獲得正確的軟件。該服務器還存儲設備被正確“構建”的記錄。
[0211]5.如果測試失敗,則該測試軟件告訴服務器,并且服務器記下設備未能通過測試。
[0212]可替代地,對于具有嵌入式Imp通信模塊的任意設備單元
[0213]1.仍可以使用登記imp,但是,嵌入式Imp設備中不存在槽可被插入,作為替代地,登記Imp通過發(fā)送“眨眼包”,即包括網絡設置信息和對設備的硬件標識令牌(軟件令牌)的光學光脈沖,來操作。
[0214]2.任意設備/嵌入式Imp的組合連接到本地WiFi,并且將軟件令牌發(fā)送到服務器。
[0215]3.服務器將該令牌識別為工廠令牌,并向該設備發(fā)送測試代碼,該測試代碼再次在嵌入式Imp虛擬機(VM)軟件環(huán)境中運行。隨后如上執(zhí)行后續(xù)步驟4和5。
[0216]在圖12(1210)中,用戶現(xiàn)在使用Imp使能燈開關(704)來經由Imp使能AC電源開關(904)控制燈(1100)。注意,控制路徑經過如圖3和4所示的Imp云服務(207)和服務器(312),由此Imp使能AC電源開關(904)可字面上地位于遠離Imp使能燈開關(704)的世界的另一側,并且假設互聯(lián)網連接良好,則系統(tǒng)可完美地工作。
[0217]圖13示出了如何快速地將Imp使能濕氣檢測器(1300)和Imp使能伺服電機(這里,連接到2x3英寸的具有大的卡板指示器的白板(1302),白板上具有手繪水平標記)配置為使得當濕氣檢測器被浸入到一杯水(1304)中時,臨時水平顯示設備幾乎立即像巨型液面計(1306)那樣運行。再次,因為連接的“膠合”邏輯和通信路徑經過Imp云服務(207)和服務器(312),因此實際的計量儀(1302)可以位于任何地方,例如字面上地位于世界的另一側。
[0218]圖14給出什么是字面上的“更好的撲鼠器”的示例,該“更好的撲鼠器”根據本發(fā)明已被網絡使能。這里,Imp槽(通用Imp插槽)被示出為(1400)。該Imp槽隨后被安裝在電子撲鼠器設備(1402)中,并且Imp(1404)被示出為從所安裝的Imp槽突出。這里,Imp使能撲鼠器的實際成本僅在正常零售價格約為20美元的撲鼠器上增加了大約一美元的材料費。
[0219]更具體地,Victor M2524電子撲鼠器是一種低成本(大約20美元)的電池供電的電子設備,其利用高壓電擊(1404)人道地殺死老鼠,其以大約I美元的成本被改進為還包括Imp適配器(Imp槽)(1400)。該改進的電子撲鼠器現(xiàn)在是互聯(lián)網使能的,并且可以例如在設備已捉到另一只老鼠時通知其用戶(無論用戶在世界上任何地方)。
[0220]其它類型的應用的示例包括能夠經由移動電話SMS消息解鎖的Imp使能門鎖,可以將Imp使能濕氣和溫度傳感器與互聯(lián)網可用的天氣預報相集成的復雜植物澆水系統(tǒng)相應地利用Imp使能水控制閥或泵智能地給植物澆水。Imp使能洗衣機或烘干機可以在洗滌完成時向用戶發(fā)送文本消息。Imp使能運動傳感器可以被放置在老人或殘疾人的家中,并且如果運動傳感器檢測到老人或殘疾人在個人的正常時間參數(shù)內尚未訪問特定的房間,例如廚房或浴室,則Imp云服務可以被設置為向負責人或服務發(fā)送文本消息或其它警告信號。
[0221]因此,本發(fā)明使得在其它情況下通常不會被web使能的極低成本的設備被web使能變得經濟可行。
[0222]另外的軟件和硬件論述和示例
[0223]Imp設備和軟件通常將支持各種無線互聯(lián)網加密方案,例如WEP、WPA和WPA2加密方案以及WPS設置。
[0224]如在本說明書其它地方所論述的,Imp設備軟件通??梢杂蓮S商或用戶使用基于web的集成開發(fā)環(huán)境(IDE)來開發(fā)。這里,例如,基于web的控制臺可以顯示有多少個用戶關注的Imp使能設備是在線的,并且該系統(tǒng)還允許軟件更新能夠通過諸如Imp云服務之類的互聯(lián)網服務即時推送到客戶處。
[0225]還如在本說明書其它地方所論述的,Imp使能設備可以由一個或多個互聯(lián)網服務器(例如圖5中的(312),例如Imp云服務)控制或管理。原理上,這種Imp云服務可以服務于任何地方,從一個Imp或Imp使能設備到世界上的所有Imp。這種標準化Imp云服務因此可將廠商從操作其自身的Imp控制服務的需要(盡管他們根據需要和協(xié)商當然可以這么做)中解放出來。
[0226]如之前所論述的,本發(fā)明還可以使Imp能夠與諸如蜂窩電話和智能電話之類的電話進行交互、交換消息并且被其控制。例如,智能電話app可以被開發(fā),以允許各種Imp相關的迷你小應用程序顯示在該app內。這些app可以允許從單個應用程序監(jiān)測和控制各種Imp使能獨立設備,并且這再次極大地降低了開發(fā)負擔。另外,Imp控制互聯(lián)網服務器或Imp云服務可以提供應用程序編程接口(API)以進一步降低廠商的開發(fā)負擔。
[0227]Imp云服務還可以允許各種各樣的Imp使能設備通常通過各種網關(例如,電子郵件、SMS和推特網關)與其它標準互聯(lián)網通信方法交互。Imp云服務還可以允許來自多個廠商的不同Imp使能設備在一起和諧地工作。
[0228]如之前所論述的,為了便于對各種任意設備進行Imp使能,進一步提供標準化槽設備(Imp槽)往往是有用的,該標準化槽設備能夠接納Imp通信模塊設備,并且隨后容易地被任意設備的廠商集成到任意設備中,從而對任意設備進行Imp使能。在某些實施例中,能夠利用最小材料清單(BOM)以低于大約一美元的成本來構建這種標準化槽設備。以下的表1中示出了提供標準化槽設備所需的最小電路的示例。
[0229]表1:1mp槽(標準化槽設備)中的部件的示例
[0230]
【權利要求】
1.一種為任意非聯(lián)網設備自動配置用于通信模塊的軟件的方法,所述任意設備具有實現(xiàn)該任意設備的功能的電路,所述方法包括: 為所述任意設備提供通信模塊,所述通信模塊能夠將控制信號傳送到所述電路中的至少一些電路中; 所述任意設備或所述通信模塊還具有能夠發(fā)送唯一標識數(shù)據的唯一 ID存儲記憶設備; 所述通信模塊具有能夠與計算機網絡建立無線網絡連接的通信接口,以及能夠讀取光學發(fā)送的配置數(shù)據的光學接口; 所述通信模塊具有能夠存儲代碼和數(shù)據的內部固態(tài)存儲器; 所述通信模塊具有至少一個內部處理器,所述至少一個內部處理器被配置為至少當所述通信模塊被連接到所述任意設備時執(zhí)行所述代碼; 使用所述光學配置接口來將無線網絡配置數(shù)據加載到所述設備中,從而允許所述通信接口與計算機網絡建立無線網絡連接; 使用所述網絡連接以及所述唯一標識數(shù)據或軟件令牌來加載用以操作所述通信模塊的代碼; 其中,所述唯一標 識數(shù)據或所述軟件令牌被一聯(lián)網服務器用來選擇用以操作所述通信模塊的類型的代碼,并且其中,所述聯(lián)網服務器存儲所述唯一標識數(shù)據和所述類型的代碼之間的關聯(lián)的記錄; 其中,針對任意設備的命令或數(shù)據通過所述網絡被發(fā)送到所述通信模塊,并且由運行所述代碼的至少一個處理器來解釋,并且其中,所述至少一個處理器又將控制信號發(fā)送到所述電路;或 其中,來自所述電路的命令或數(shù)據被發(fā)送到所述通信模塊,由運行所述代碼的至少一個處理器來解釋,并且使用所述通信接口被發(fā)送到所述網絡。
2.根據權利要求1所述的方法,其中,所述軟件令牌被聯(lián)網服務器用來選擇用以操作所述通信模塊的類型的代碼,并且其中,在所述選擇之后,所述聯(lián)網服務器存儲所述唯一標識數(shù)據和所述類型的代碼之間的關聯(lián)的記錄; 進一步使用所述光學配置接口來將所述軟件令牌加載到所述通信模塊的內部固態(tài)存儲器中,從而允許所述通信接口將所述軟件令牌發(fā)送到所述聯(lián)網服務器。
3.根據權利要求1所述的方法,其中,所述通信模塊為多個可拆卸通信模塊,并且所述任意非聯(lián)網設備進一步包括能夠容納所述可拆卸通信模塊的槽; 其中,所述任意設備進一步包括能夠發(fā)送唯一標識數(shù)據的所述唯一 ID存儲記憶設備; 通過以下操作進一步提供所述軟件令牌: 將第一可拆卸通信模塊插入到所述槽中,所述第一可拆卸通信模塊的所述內部固態(tài)存儲器中包含所述軟件令牌; 與所述聯(lián)網服務器建立網絡連接,并且向所述聯(lián)網服務器發(fā)送所述唯一標識數(shù)據和所述軟件令牌,從而允許所述聯(lián)網服務器記錄所述唯一標識數(shù)據和所述軟件令牌之間的關聯(lián); 其中,所述軟件令牌被一聯(lián)網服務器用來選擇用以操作所述通信模塊的類型的代碼,并且其中,在所述選擇之后,聯(lián)網服務器存儲所述唯一標識數(shù)據和所述類型的代碼之間的關聯(lián)的記錄; 其中,當所述內部固態(tài)存儲器中不包含所述軟件令牌的第二可拆卸通信模塊被插入到所述槽中時,所述第二通信模塊能夠從所述任意設備獲取所述唯一標識數(shù)據并且將所述唯一標識數(shù)據發(fā)送到所述聯(lián)網服務器;以及 所述聯(lián)網服務器能夠使用所述唯一標識數(shù)據與所述類型的代碼之間的關聯(lián)的所述記錄,來選擇用以操作所述第二可拆卸通信模塊的類型的代碼。
4.根據權利要求1所述的方法,其中,所述通信模塊進一步包括具有電連接的物理接口; 所述任意設備另外還包括一通信模塊接口,該通信模塊接口能夠與所述通信模塊上的所述電連接交互,并且將所述電連接之間的控制信號傳送所述電路中的至少一些電路。
5.根據權利要求4所述的方法,其中,所述通信模塊能夠將其電連接中的至少一些電連接的功能重新配置為交替的模擬或數(shù)字協(xié)議,以用于與所述任意設備交互。
6.根據權利要求1的方法,其中,所述代碼將所述通信模塊的至少一個處理器配置為作為沙盒或虛擬機以如下方式來操作:防止操作所述任意設備的代碼部分中的程序崩潰或錯誤干擾操作所述通信模塊網絡接口的代碼部分。
7.根據權利要求6所述的方法,其中,所述代碼將所述通信模塊的至少一個處理器配置為作為虛擬機以如下方式來操作:進一步將獨立于通信模塊設備的接口提供給操作所述任意設備的代碼部分。
8.根據權利要求1所述的方法,其中,能夠讀取光學發(fā)送的配置數(shù)據的所述光學接口進一步包括:至少一個光電檢測器或與至少一個光檢測器的至少一個連接件。
9.根據權利要求1所述的方法,其中,當不存在本地網絡連通性,或者不存在與互聯(lián)網或與能夠向所述通信模塊提供指令的互聯(lián)網服務器的網絡連通性時,所述通信模塊代碼能夠在至少交替回退模式下操作所述任意設備。
10.根據權利要求1所述的方法,用于控制至少兩個任意設備,每個任意設備配備有其自己的通信模塊,所述方法包括: 為至少一個互聯(lián)網服務器配置以管理所述任意設備或通信模塊的操作的指令; 在所述通信模塊與所述至少一個互聯(lián)網服務器之間建立網絡連接; 使用所述至少一個互聯(lián)網服務器來將來自第一任意設備和通信模塊的命令或數(shù)據中繼到第二任意設備和通信模塊;或 使用所述至少一個互聯(lián)網服務器來將來自至少一個配備有其自己的通信模塊的任意設備的命令或數(shù)據中繼到外部的人或自動接收方;或 使用所述至少一個互聯(lián)網服務器來將來自外部的人或自動源的命令或數(shù)據中繼到至少一個配備有其自己的通信模塊的任意設備。
11.根據權利要求1所述的方法,在所述任意設備中進一步提供用以容納通信模塊的槽; 在所述任意設備中的所述槽另外還具有通信模塊接口,該通信模塊接口能夠與所述通信模塊交互,并且將控制信號傳送到所述電路中的至少一些電路; 所述任意設備另外還具有能夠從所述任意設備向所述通信模塊發(fā)送唯一標識數(shù)據的唯一 ID存儲記憶設備;并且其中,所述通信模塊是可拆卸通信模塊。
12.根據權利要求1所述的方法,其中,所述通信模塊被永久性地嵌入到所述任意設備中。
13.一種為任意非聯(lián)網設備自動配置用于通信模塊的軟件的方法,所述任意設備具有實現(xiàn)該任意設備的功能的電路,所述方法包括: 在所述任意設備中提供用以容納通信模塊的槽; 在所述任意設備中的所述槽另外還具有通信模塊接口,該通信模塊接口能夠與所述通信模塊交互,并且將控制信號傳送到所述電路中的至少一些電路; 所述任意設備另外還具有能夠從所述任意設備向所述通信模塊發(fā)送唯一標識數(shù)據的唯一 ID存儲記憶設備; 為所述任意設備提供一通信模塊,該通信模塊能夠將控制信號傳送到所述電路中的至少一些電路; 所述通信模塊具有:能夠與計算機網絡建立無線網絡連接的通信接口,以及能夠讀取光學發(fā)送的配置數(shù)據的光學接口; 其中,能夠讀取光學發(fā)送的配置數(shù)據的所述光學接口進一步包括至少一個光電檢測器; 所述通信模塊具有能夠存儲代碼和數(shù)據的內部固態(tài)存儲器; 所述通信模塊具有至少一個內部處理器,所述至少一個內部處理器被配置為至少當所述通信模塊被連接到所述任意設備時執(zhí)行所述代碼; 使用所述光學配置接口來將無線網絡配置數(shù)據加載到所述設備中,從而允許所述通信接口與計算機網絡建立無線網絡連接; 使用所述網絡連接以及所述唯一標識數(shù)據或軟件令牌,來加載用以操作所述通信模塊的代碼; 其中,所述唯一標識數(shù)據或所述軟件令牌被一聯(lián)網服務器用來選擇用以操作所述通信模塊的類型的代碼,并且其中,所述聯(lián)網服務器存儲所述唯一標識數(shù)據和所述類型的代碼之間的關聯(lián)的記錄; 其中,針對所述任意設備的命令或數(shù)據通過所述網絡被發(fā)送到所述通信模塊,并且由運行所述代碼的至少一個處理器來解釋,并且其中,所述至少一個處理器又將控制信號發(fā)送到所述電路;或 其中來自所述電路的命令或數(shù)據被發(fā)送到所述通信模塊,并且由運行所述代碼的至少一個處理器來解釋,并且使用所述通信接口被發(fā)送到所述網絡。
14.根據權利要求13所述的方法,其中,所述通信模塊為多個可拆卸通信模塊: 通過以下操作進一步提供所述軟件令牌: 將第一可拆卸通信模塊插入到所述槽中,所述第一可拆卸通信模塊的所述內部固態(tài)存儲器中包含所述軟件令牌; 與所述聯(lián)網服務器建立網絡連接,并且向所述聯(lián)網服務器發(fā)送所述唯一標識數(shù)據和所述軟件令牌,從而允許所述聯(lián)網服務器記錄所述唯一標識數(shù)據和所述軟件令牌之間的關聯(lián); 其中,所述軟件令牌被一聯(lián)網服務器用來選擇用以操作所述通信模塊的類型的代碼,并且其中,在所述選擇之后,聯(lián)網服務器存儲所述唯一標識數(shù)據和所述類型的代碼之間的關聯(lián)的記錄; 其中,當所述內部固態(tài)存儲器中不包含所述軟件令牌的第二可拆卸通信模塊被插入到所述槽中時,所述第二通信模塊能夠從所述任意設備獲取所述唯一標識數(shù)據并且將所述唯一標識數(shù)據發(fā)送到所述聯(lián)網服務器;以及 所述聯(lián)網服務器能夠使用所述唯一標識數(shù)據與所述類型的代碼之間的關聯(lián)的所述記錄,來選擇用以操作所述第二可拆卸通信模塊的類型的代碼。
15.根據權利要求13所述的方法,其中所述通信模塊進一步包括:具有物理兼容的電連接的標準固態(tài)存儲卡物理接口; 其中,所述通信模塊還包括電子和邏輯接口,在至少一種操作模式下,所述電子和邏輯接口能夠連接到標準存儲卡讀取器,并根據標準存儲卡協(xié)議存儲和檢索存儲數(shù)據; 其中,所述任意設備中的所述槽另外還包括通信模塊接口,所述通信模塊接口能夠與所述通信模塊上的所述物理兼容的電連接交互,并且將所述物理兼容的電連接之間的控制信號傳送到所述電路中的至少一些電路。
16.根據權利要求15所述的方法,其中,當所述通信模塊連接到所述任意設備時,所述通信模塊能夠將其物理兼容的電連接中的至少一些電連接的功能重新配置為交替的模擬或數(shù)字協(xié)議,以用于與所述任意設備交互。
17.根據權利要求 15所述的方法,其中,所述標準固態(tài)存儲卡物理接口、物理兼容的電氣接口和邏輯接口是PC卡、緊湊式閃存卡、智能媒體卡、記憶棒卡、微型卡、多媒體卡、MMCmicro卡、安全數(shù)字卡、SxS卡、通用閃存存儲卡、miniSD卡、microSD卡、xD-Picture卡、智慧棒卡、串行閃存模塊、μ卡、NT卡或其他商用標準的固態(tài)存儲卡形式。
18.根據權利要求13所述的方法,其中,所述槽是設計為與多種不同類型的任意設備兼容的標準化槽設備,并且其中,所述標準化槽設備包括用于所述通信模塊的插槽、標識芯片、通信模塊電源和在所述通信模塊與所述任意設備電路之間提供電氣接口的接口電路。
19.根據權利要求18所述的方法,其中,所述標準化槽設備安裝在所述任意設備的表面上的槽的后面,從而產生單元式的任意設備和標準化槽設備,使得所述標準化槽設備的插槽保持打開,并且能夠接納和拆卸所述通信模塊。
20.根據權利要求13所述的方法,其中,當所述通信模塊從第一任意設備被移到第二任意設備時,所述通信模塊獲取所述第二任意設備的唯一標識數(shù)據,與所述聯(lián)網服務器建立網絡連接,將所述第二任意設備的所述唯一標識數(shù)據發(fā)送到所述聯(lián)網服務器,并且從所述聯(lián)網服務器接收與所述第二任意設備相關聯(lián)的代碼,從而給予所述通信模塊以為所述第二任意設備增加網絡接口的能力,并且允許所述通信模塊可在所述第一任意設備與所述第二任意設備之間互換。
【文檔編號】G06F15/177GK104040530SQ201380004913
【公開日】2014年9月10日 申請日期:2013年1月5日 優(yōu)先權日:2012年1月5日
【發(fā)明者】雨果·費斯 申請人:電氣銀普股份有限公司