<kbd id="cw945jpy"></kbd><address id="cw945jpy"><style id="cw945jpy"></style></address><button id="cw945jpy"></button>

              <kbd id="y9ype3wd"></kbd><address id="y9ype3wd"><style id="y9ype3wd"></style></address><button id="y9ype3wd"></button>

                      <kbd id="c9siu7ao"></kbd><address id="c9siu7ao"><style id="c9siu7ao"></style></address><button id="c9siu7ao"></button>

                          
                          首頁 > 服務中心 > 晶控課堂 >

                          Delphi硬件編程實現打開或關閉電燈泡

                          2018-09-27 09:18
                          分享到:
                          之前我們已經給廣大愛好者或程序員朋友們,帶來了硬件版的或者說物聯網版本的Hello World C++Builder版的程序源碼和教學資料 ,讓大家對硬件控制帶來一個嶄新的認識。今天我們再出一套兄弟版本Delphi編程語言的教程與實例源代碼 。
                          c++builder
                          Delphi的開發與C++Builder開發環境幾乎相同,畢竟是一個祖宗嘛 。目前最新的開發工具 ,稱爲RDA Studio ,整個開發環境  ,集成了C++Builder和Delphi兩種開發工具,其實只是語言不同 ,控件使用全部一樣,C++Builder使用的是C++語言,而Delphi使用的是Pascal語言,廢話不多說了,我們下面就開始進行工程的創建 。這個工程的功能 ,就是讓我們可以通過鼠標點擊按鈕,實現打開燈泡和關閉燈泡的功能。

                          創建工程
                          首先 ,我們使用File菜單下面的“VCL Forms Application- Delphi”來創建程序窗口 。

                          form設計
                          這樣,一個Form設計器界面 ,就在我們面前了  。

                          擺放控件
                          然後,我們在Form窗體上 ,擺放4個Button按鈕,以及一個ClientSocket控件。我們PC電腦和硬件智能控制盒使用Socket的通信方式,進行接互 ,對於硬件控制盒的關鍵點介紹,我們後面會進行講解。

                          我們先把按鈕  ,通信組件等控制都擺放好後,設置好窗體的屬性名稱後 ,接下去,我們就要給控件來寫代碼程序了  。我們的demo程序很簡單 ,只有4個按鈕  ,第一個按鈕用於通信端口的打開和關閉,第二個按鈕用於在打開端口後,對硬件設備進行初始化的操作 ,初始化完成後 ,就可以點第三個按鈕,打開電燈泡;或者點擊第四個按鈕,關閉電燈泡了  。在ClientSocket1這個控件中 ,我們預先將它的尾性host和port,即服務器地址和端口  ,設置成硬件本身特有的IP和端口,在此,我們設置成:192.168.1.201和7777 。該參數由硬件控制盒所決定,直接照秒即可 。硬件控制盒有個網絡配置的小工具軟件,一打開它就可以看到IP和端口了。
                          网络参数设置
                          如圖所示,我們根據硬件控制盒的掃描工具得到的參數 ,在Delphi中的ClientSocket1控件進行設置。

                          socket通信代碼
                          控件參數設置好後,我們雙擊所有的Buttion按鈕 ,寫上相應的代碼 。以上代碼非常簡單明瞭  ,我們已經在每一行代碼後面,做了註釋。ClientSocket1.Active:=true這行語句,用來打開通信端口 ,注意:每次硬件設備上電後,一定要先發送 “RELAY–SCAN_DEVICE–NOW“ 和 “RELAY-TEST-NOW“ 這兩條指令,才完成控制盒初始化工作。然後 ,我們通過語句 ClientSocket1.Socket.SendText("RELAY-SET-1,1,1"); 來向控制盒發送打開燈泡的命令; ClientSocket1.Socket.SendText("RELAY-SET-1,1,0");作爲關閉燈泡的命令。
                          關於控制繼電器的通信協議說明如下:
                          RELAY-SET-x(1 字節 pack_num),x(1 字節繼電器序號),x(1 字節動作 0/1)
                          返回:RELAY-SET-x(1 字節 pack_num),x(字節繼電器序號),x(1 字節動作0/1),OK/ERROR

                          保存工程文件
                          到現在爲止,程序代碼已經寫完了,只用了3分鐘時間 ,很快吧 。現在 ,我們將工程項目進行保存。

                          保存文件
                          我們取目錄名爲 hardware_hello_world_delphi ,將所有的源程序代碼和工程文件保存在該目錄下 。

                          程序運行
                          運行程序 ,我們馬上可以看到控制界面出現了。到現在爲止 ,我們的軟件程序代碼已經寫完了 ,現在我們要連接硬件設備、小燈泡 ,來驗證一下我們的代碼 ,驗證奇蹟的到來!

                          智能硬件控制盒
                          這是我們準備好的KC868-H8智能硬件控制盒,電燈泡、電線、剪刀、電工膠布  。

                                 控制盒有8路繼電器接線柱,每一路爲公共端與常開端 ,即相當於一個普通的開關。

                                 繼電器輸出接線柱接法如圖1所示,每種顏色代表一路,每路都是和前級隔離 ,相當於一個獨立開關。

                          繼電器接線
                           

                          舉一個很簡單電路來說明:比如我們選第3路,如圖所示,第3路是示意圖中綠色的一對接線柱,接口是5、6 ,我們畫了一個電燈泡經過交流220V串聯後的電路圖 ,不管是哪一路,接線方法都是一樣的。
                          網絡開關
                          因爲,我們現在只有1個電燈泡 ,爲了方便,我們將它接在控制盒的第1路 ,當然 ,如果你想將8個燈泡全部接上也是完全可以的 。


                          電燈接線
                          電燈泡一共有兩條供電電線 ,我們先將其中一條與220V插頭線的其中一條相連,任意其中一條即可 。好了  ,然後就留下兩個線頭了 ,一條棕色 ,一條黃色 ,實際應用中,無所謂我現在使用的顏色  。

                          kc868-h8控制盒
                          我們可以看到硬件控制盒的最左邊電路板上有標記數字“1” ,這就是我們的第1路 。

                          控制端接線
                          現在,我們將剛纔最後的兩條電線與控制盒的第一個端口相連 ,接線順序無所謂,用手壓下去 ,把電線塞進去  ,然後再放開即可 ,免螺絲的設計。

                          接線
                          接線時 ,記得把電線塞到最裏面,不要露出銅絲部分,安全第一 。

                          遠程控制燈泡
                          接好線後 ,我們就可以準備將220V的插頭上電了。

                          智能硬件控制
                          歷史性的一刻馬上要到來了  ,將控制盒和電燈泡的插頭全部插到排插上 ,準備打開電源。
                          打開電燈
                          我們依次點擊程序界面中的幾個按鈕,“打開端口”、“初始化”、“打開電燈”按鈕。

                          硬件控制電燈
                          當點擊“打開電燈”後,我們的硬件馬上對電燈泡進行了開啓操作,電燈一下子就亮了 ,哈哈,成功了,是不是感覺很神奇,但又如此簡單 。

                          關閉電燈
                          然後  ,我們再點擊“關閉電燈”按鈕 ,我們可以看到,電燈馬上就熄滅了,而且還非常靈活。

                          關閉電燈

                          到止,第一個C++Builder版的控制電燈泡的hello world版的小程序就開發並驗證完成了。現在是不是感覺智能家居的控制如此神奇與不可思議,不過你已經可以實現控制了哦 ,會控制了電燈泡,控制其它電器設備 ,其原理都是一樣的,這樣就又向物聯網技術、人工智能技術的大門跨進了一個腳步。對於以上的項目源程序我們進行開源提供 ,如果有需要的朋友 ,可以留言和我們聯繫 。在接下去,我們將會編寫提供給大家更多的硬件版hello world程序案例 ,方便各位同學走進物聯網與人工智能技術的大門。

                          開源智能家居二次開發實例——Delphi硬件編程實現打開或關閉電燈泡文章附件(Delphi工程項目源程序代碼包下載)