Giao t hc HTTP ứ

Một phần của tài liệu Ứng dụng iot để điều khiển một số hệ thống trên ô tô (Trang 54)

HTTP cho phép giao ti p gi a nhi u máy ch và khách hàng , và h trế ữ ề ủ ỗ ợ

Hình 3.6: Giao th c HTTPứ

Giao ti p gi a m t máy ch và khách hàng x y ra, thông qua m t yêuế ữ ộ ủ ả ộ

c u / ph n h i. Các máy khách kh i t o m t thông báo yêu c u HTTP, đó làầ ả ồ ở ạ ộ ầ

d ch v thông qua m t tin nh n ph n h i HTTP trong tr l i.ị ụ ộ ắ ả ồ ở ạ

3.2.2. M ng o riêng (VPN)

VPN là m t công ngh m ng giúp t o k t n i m ng an toàn khi tham giaộ ệ ạ ạ ế ố ạ

vào m ng công c ng nh Internet ho c m ng riêng do m t nhà cung c p d chạ ộ ư ặ ạ ộ ấ ị

v s h u. N u mu n k t n i vào h th ng VPN, thì m i 1 tài kho n đ u ph iụ ở ữ ế ố ế ố ệ ố ỗ ả ề ả

được xác th c (ph i cóự ả Username và Password).

S d ng VPN đ truy c p vào m ng n i b khi xa, dùng đ đi u khi nử ụ ể ậ ạ ộ ộ ở ể ề ể

các thi t b khi không th k t n i chung m ng v i b đi u khi n. Trong đ ánế ị ể ế ố ạ ớ ộ ề ể ồ

này, chúng em đã ch n h th ng LogMein Hamachi, đây là h th ng n đ nh vàọ ệ ố ệ ố ổ ị

3.3. Cách th c th c hi n

3.3.1. Cài đ t h đi u hành cho RPi 3 ệ ề

Đ cài đ t h đi u hành cho RPi c n: ể ặ ệ ề ầ

Ph n m m Win32 Disk Imager (có th s d ng các ph n m m có ch cầ ề ể ử ụ ầ ề ứ

năng tương t )ự được t iả về t iạ:

http://sourceforge.net/projects/win32diskimager/ .

M t th nh MicroSD t i thi u 4GB, khuy n cáo s d ng th 8GB classộ ẻ ớ ố ể ế ử ụ ẻ

10 tr lên đ có dung lở ể ượng đ m b o và t c đ t t nh t.ả ả ố ộ ố ấ

H đi u hành đệ ề ượ ả ề ạc t i v t i:https://www.raspberrypi.org/downloads/.

Ph n m m gi i nén 7Zip đầ ề ả ược t i v t i: ạ ề ạ https://www.7- zip.org/download.html.

Các bước cài đ t h đi u hành cho RPi 3:ặ ệ ề

Bước 1: Dùng ph n m m 7Zip gi i nén h đi u hành Raspbian đã t i vầ ề ả ệ ề ả ề

Hình 3.7: File ch a h đi u hành Raspbianứ ệ ề

Bước 2: M ph n m m Win32 Win32 Disk Imager và ch n t p h đi uở ầ ề ọ ệ ệ ề

hành đã gi i nén thành công, sau đó l a ch n th nh c n ghi. Cu i cùngả ự ọ ổ ẻ ớ ầ ố

b m Write và đ i quá trình cài đ t h đi u hành hoàn t t.ấ ợ ặ ệ ề ấ

Hình 3.8: Ghi h đi u hành vào th nhệ ề ẻ ớ

3.3.2. Thi t l p Raspbian căn b nế ậ

Đ thi t l p các cài đ t cho h đi u hành Raspbian, chúng ta hoàn toànể ế ậ ặ ệ ề

có th truy c p tr c ti p vào Pi 3 qua màn hình b ng cáp VGA.ể ậ ự ế ă

Tuy nhiên, n u không có màn hình và dây cáp chúng ta có th truy c pế ể ậ

thông qua máy tính b ng cách s d ng Remote Desktop trên h đi u hànhă ử ụ ệ ề

Windows b ng các bă ước sau:

Bước 1: C m th nh đã cài đ t h đi u hành Raspbian vào máy tính.ắ ẻ ớ ặ ệ ề

M file cmdline.txt b ng ph n mêm WordPad và thêm vào dòng ip=ở ă ầ

192.168.137.222 đ cài đ t ip tĩnh khi chúng c m dây m ng k t n i Pi và máyể ặ ắ ạ ế ố

Bước 2: T o file ssh đ có th truy c p đạ ể ể ậ ược vào RPi 3. M ng d ngở ứ ụ

Cmd trên máy tính và nh p vào dòng l nh nh hình 3.9 đ t o m t file sshậ ệ ư ể ạ ộ

trên th nh ch a h đi u hành Raspbian.ẻ ớ ứ ệ ề

Hình 3.9: Cài đ t file sshặ

Bước 3: Tháo th nh g n vào Pi 3 và k t n i v i máy tính thông quaẻ ớ ắ ế ố ớ

c ng LAN.ổ

Bước 4: Trên máy tính chúng ta vào Control Panel > Network and Internet > Network and Sharing Center và ch n m ng wifi đang k t n i đ chiaọ ạ ế ố ể

s m ng v i RPi 3. Ch n Properties > Sharing và đánh d u l a ch n nh hìnhẻ ạ ớ ọ ấ ự ọ ư

Hình 3.10: Thi t l p chia s wifiế ậ ẻ

Bước 5: Ti p t c vào Control Panel > Network and Internet > Networkế ụ

and Sharing Center và ch n m ng LAN gi a Pi 3 và máy tính. Ch n Ch nọ ạ ữ ọ ọ

Properties > Networking > Internet protocol version 4 (tcp/ipv4) và cài đ tặ

Hình 3.11: Thi t l p m ng LAN cho RPi 3ế ậ ạ

Bước 6: M ph n m m Putty và đi n các thông s c b n nh hình 3.12 :ở ầ ề ề ố ơ ả ư  Ch nọ Connection type : giao th cứ SSH

 Ch nọ Port logic : 22

 Th c hi n đi nự ệ ề Host name (or IP address), ví

d :ụ 192.168.137.222

 B m Open đ k t n i Pi 3 và máy tính v i giao di n cmd ( hình)ấ ể ế ố ớ ệ  Nh p Username : pi và Password: raspberry đ truy c p vào Pi 3ậ ể ậ

Hình 3.12: S d ng ph n m m Putty đ truy c pử ụ ầ ề ể ậ

Bước 7: Cài đ t gói xdrp b ng dòng l nh “sudo apt-get install xrdp” vàặ ă ệ

Hình 3.13: Cài đ t gói xdrp đ truy c p vào RPi 3ặ ể ậ

Bước 8: M ở Remote Desktop trên máy tính và nh p vào đ a ch ip đãậ ị ỉ

thi t l p bế ậ ở ước 1. Nh p username và password tậ ương t bự ước 6 đ k t n iể ế ố

được v i Pi 3 b ng máy tính thông qua m ng LAN v i giao di n nh hình 3.14.ớ ă ạ ớ ệ ư

Hình 3.15: Giao di n nh p username và password khi truy câp vào RPi ệ ậ

3

Sau đó chúng ta ti n hành k t n i Wifi cho Pi 3 đ có th thi t l p c hế ế ố ể ể ế ậ ơ ệ

đi u hành Raspbian (hình 3.15) thông qua l nh cmd trên Pi 3 :ề ệ

 Nh p vào ậ sudo apt-get update && sudo apt-get upgrade đ ti nể ế

hành c p nh t h đi u hành Raspbianậ ậ ệ ề

 Nh p ậ sudo apt-get install python-dev python-rpi.gpio đ cài đ tể ặ

Hình 3.16: C p nh t h đi u hành Raspbianậ ậ ệ ề

Hình 3.17: Cài đ t th vi n GPIOặ ư ệ

3.3.3. Cài đ t websever cho RPi 3

Đ có th đi u khi n để ể ề ể ược RPi 3 th ng qua trang web trố ước h tế

Cài đ t gói d ch v Apache b ng cách ch y l nh sau: ặ ị ụ ă ạ ệ sudo apt-get install apache2 –y

M c đ nh, Apache sẽ ch y m t file ki m tra HTML sau khi cài đ tặ ị ạ ộ ể ặ

xong, m trình duy t và gõ đ a ch IP c a RPi 3. N u cài đ t apacheở ệ ị ỉ ủ ế ặ

thành công sẽ th y nh hình 3.18 .ấ ư

Hình 3.18: Giao di n webserver RPI 3 khi cài thành công Apache2ệ

Sau khi cài đ t Apache xong, m c đ nh d li u c a web sẽ n mặ ặ ị ữ ệ ủ ă ở /var/www/. Trong này có file index.html chính là file mà đã nhìn th yấ

n i dung bộ ở ước trên. Đ ch nh s a giao di n trang web, chúng ta chể ỉ ử ệ ỉ

Hình 3.19: Th m c ch a d li u webserverư ụ ứ ữ ệ

Đ xây d ng trang web v i nhi u tính năng h n, chúng ta c nể ự ớ ề ơ ầ

ph i s d ng PHP. Đ cài đ t PHP trên RPi 3 chúng ta s d ng dòngả ử ụ ể ặ ử ụ

l nh ệ sudo apt-get install php5 libapache2-mod-php5 –y

3.3.4. Truy n hình nh t camera lên trang web

Cài đ t các gói c n thi t đ có th s d ng đặ ầ ế ể ể ử ụ ược ch c năngứ

stream camera b ng dòng l nhă ệ

sudo apt-get install libjpeg8-dev imagemagick libv4l-dev -y

M c đ nh RPi đ u không có th vi nặ ị ề ư ệ videodev.h n a màữ

là videodev2.h. Thư vi nệ videodev2.h có thể được dùng như videodev.h vì v y ch y l nh sau đ đ biên d ch MJPG Streamer:ậ ạ ệ ể ể ị

sudo ln -s /usr/include/linux/videodev2.h /usr/include/linux/videodev.h

Sau đó ch y dòng l nh sau đ t i v mã ngu n c a MJPGạ ệ ể ả ề ồ ủ

http://sourceforge.net/code-snapshots/svn/m/mj/mjpg- streamer/code/mjpg-streamer-code-182.zip

Gi i nén MJPG Streamer và cài đ t qua các dòng l nh:ả ặ ệ

unzip mjpg-streamer-code-182.zip

cd mjpg-streamer-code-182/mjpg-streamer make mjpg_streamer input_uvc.so output_http.so

Ch y dòng l nh sau đ ki m tra ho t đ ng c a camera: ạ ệ ể ể ạ ộ ủ

LD_LIBRARY_PATH=/usr/local/lib mjpg_streamer -i "/usr/local/lib/input_uvc.so -d /dev/video0 -quality 100 -f 30 -r 640x480" -o "/usr/local/lib/output_http.so -w /usr/local/www -p 9000"

Các thông s :ố

-d < device name - chu i - m c đ nh /dev/video0 >ỗ ặ ị

-quality < ch t lấ ượng - s nguyên t 1 - 100 - m c đ nh 75 >ố ừ ặ ị

-f < frame per second - s nguyên t 1 - 60 - m c đ nh 10 >ố ừ ặ ị

-r < kích thước khung hình - chu i (xem hỗ ướng d n dẫ ở ưới) > -p < port - s nguyên - t 1 => 2ố ừ 16 – 1 >

Cu i cùng truy c p vào đ a ch ố ậ ị ỉ http://< đ a ch IP c a Raspi>:9000 trênị ỉ ủ

máy tính k t n i chung m ng v i RPi 3 đ ki m tra xem có th th y hình nhế ố ạ ớ ể ể ể ấ ả

Hình 3.20: Giao di n khi truy n hình nh camera thành côngệ ề ả

3.3.5. Cài đ t VPN trên RPi 3.

Bước đ u hãy vào trang web c a Hamachi đầ ủ ể đăng kí và sau đó đăng nh p sẽ đậ ược giao di n nh hình 3.21.ệ ư

Ch n Add Netwwork và đi n thông tin vàoọ ề

Hình 3.22: Đi n thông tin m ng n i bề ạ ộ ộ

Bước 3: Thêm nh ng thiêt b c a mình vàoữ ị ủ

 T i ph n m mả ầ ề logmein-hamachi v máy tínhề

Hình 3.23: Giao di n Hamachi trên máy tínhệ

Hình 3.24: Đăng nh p vào hamachiậ

Hình 3.25: Thông tin máy tính cài đ t hamachiặ

Sau đó, vào l i trang ch ch n Add/Remove members đ thêm vào máyạ ủ ọ ể

tính đang s d ng vào m ng chung.ử ụ ạ

3.3.6. Thi t l p cho RPi 3ế ậ

Ti p theo là cách chúng ta thi t l p cho RPi 3:ế ế ậ  Trước tiên t i ph n m m này v :ả ầ ề ề

wget https://www.vpn.net/installers/logmein-hamachi-2.1.0.174- armel.tgz  Gi i nén raả tar -zxvf logmein-hamachi-2.1.0.174-armel.tgz  Vào th m c v a gi i nénư ụ ừ ả cd logmein-hamachi-2.1.0.174-armel.tgz  Ch y file Installạ sudo ./install.sh

 Cài đ t xong chúng ta kh i đ ng hamachiặ ở ộ

sudo /etc/init.d/logmein-hamachi start

 Đăng nh p:ậ

hamachi login

 Yêu c u k t ầ ế n i v i máy ch , nh p email v a đăng kí :ố ớ ủ ậ ừ

hamachi attach quocthong2106@gmail.com

 Đ t m t cái tên cho client Raspi:ặ ộ

hamachi set-nick raspberry

Hình 3.27: Thông báo khi có thi t b yêu c u thêm vàoế ị ầ

 Nh n vào Acceptấ

Hình 3.28: L u l i các thi t b thêm vàoư ạ ế ị

Sau khi b m save chúng ta quay tr l i ng d ng hamachi trên máy tínhấ ở ạ ứ ụ

đ ki m tra các thi t b đã để ể ế ị ược k t. Các thi t b ch m xanh lá là đang ho tế ế ị ấ ạ

đ ngộ

3.3.7. Thi t l p cho Smart phoneế ậ

Đ đi n tho i có th k t n i v i m ng chung, c n ph i thêm vào trangể ệ ạ ể ế ố ớ ạ ầ ả

ch c a hamachi. Xong ch n Add Mobile client, đ t tên và thêm vào m ngủ ủ ọ ặ ạ

chung. Sau đó chúng ta làm theo hướng d n c a trang web đ thi t l p m ngẫ ủ ể ế ậ ạ

Hình 3.29: Thêm đi n tho i vào m ng chungệ ạ ạ

Hình 3.30: Hướng d n cài đ t trên đi n tho iẫ ặ ệ ạ

3.4. K t n i các thi t b và lên mô hình hoàn ch nhế ế

3.4.1. K t n i RPi v i module relayế

Dùng RPi 3 g i tín hi u s đ n các module relay đ đóng /m relayử ệ ố ế ể ở

B ng 3.1:ả Cách k t n i chân RPi3 v i module relay 4 kênhế ố ớ

RPi 3 Module relay 4

kênh GND 32 36 37 38 5V GND IN1 IN2 IN4 IN3 VCC

B ng 3.2:ả Cách k t n i RPi3 v i module relay 1 kênh đi u khi n hế ố ớ ề ể ệ

th ngố

RPi 3

Module relay 1 kênh đi u khi nề ể

h th ngệ ố GND 11 5V DC- IN DC+

B ng 3.3:ả Cách k t n i RPi 3 v i module relay 1 kênh đi u khi n đènế ố ớ ề ể

RPi 3

Module relay 1 kênh đi u khi nề ể

đèn GND

12

DC- IN

3.4.2. K t n i RPi 3 v i m ch đ c tín hi uế

M ch đ c tín hi u s d ng c u phân áp đ bi n đ i 12V thành 4V n m ạ ọ ệ ử ụ ầ ể ế ổ ă

trong ngưỡng RPi có th đ c để ọ ược

B ng 3.4:ả Cách k t n i RPi 3 v i m ch đ c tín hi uế ố ớ ạ ọ ệ RPi 3 M ch đ cạ ọ tín hi uệ GND 29 31 33 5V GND B1 B2 B3 VCC 3.4.3. K t n i các module v i các thi t bế ế

Do s d ng module relay cách ly nên có th s d ng ngu n 12V đ đi uử ụ ể ử ụ ồ ể ề

khi n thi t b không nh hể ế ị ả ưởng t i tín hi u đi u khi n 5V c a RPi 3.ớ ệ ề ể ủ

B ng 3.5:ả Cách k t n i module relay 4 kênh v i thi t bế ố ớ ế ị

Module relay

4 kênh Accu Motor nâng kính Motor khóa c aử

Relay 1 1 2 3 + - 1 chân c a motorủ Relay 2 1 2 3 + - Chân còn l i c aạ ủ motor

Relay 3 1 2 3 + - 1 chân c a motorủ Relay 4 1 2 3 + - Chân còn l i c aạ ủ motor

B ng 3.6:ả Cách k t n i module đi u khi n h th ng v i thi t bế ố ề ể ệ ố ớ ế ị

Module relay 1 kênh

đi u khi n h th ngề ể ệ ố Accu H th ngệ ố

1 2 3 - + Dây âm Dây đương

B ng 3.7: ả Cách n i dây module đi u khi n đèn v i thi t bố ề ể ớ ế ị

Module relay 1 kênh

đi u khi n đènề ể Accu Đèn

1 2 3 - + Dây âm Dây dương B ng 3.8:ả Cách n i dây m ch đ c tín hi u v i thi t bố ạ ọ ệ ớ ế ị M ch đ c tínạ ọ hi uệ H th ngệ ố Đèn Công t c hànhắ trình khóa c aử A1 A2 A3 Dây dương Dây dương 2

3.5. Mô hình th c tự ế

V i các bớ ước làm trên chúng em đã xây d ng thành công mô hình th cự ư

t . Có th đi u khi n qua đi n tho i và truy n hình nh tr c ti p t cameraế ể ề ể ệ ạ ề ả ự ế ừ

lên giao di n web đi u khi n. ệ ề ể

Hình 3.31: Mô hình th c tự ế

3.6. Xây đ ng giao di n web server

Giao di n web server đệ ượ ậc l p trình trên n n t ng html. ề ả Chúng ta thay đ i file index.html trong RPi đ t o giao di n mong mu n. Tuy nhiên html chổ ể ạ ệ ố ỉ

có th t o ra trang web c b n, đ có th làm trang web có giao di n đ p h nể ạ ơ ả ể ể ệ ẹ ơ

l p trình file index.html d dàng, chúng em s d ng ph n m m Dreamweaverậ ễ ử ụ ầ ề

đ l p trình đ n gi n và d s d ng.ể ậ ơ ả ễ ử ụ

Hình 3.32: Giao di n Dreamweaver khi l p trình htmlệ ậ

M t chộ ương trình html g m 3 ph n c b n:ồ ầ ơ ả

<!Doctype>: Ph n khai báo chu n c a html hay xhtml. đây chúng taầ ẩ ủ Ở

s d ng html nên ph n này sẽ khai báo là html:ử ụ ầ

<!DOCTYPE html>

<head></head>: Ph n khai báo ban đ u, khai báo v meta, title, css,ầ ầ ề

javascript…Trong ph n này ta s d ng th script đ có th liên k t v i các thầ ử ụ ẻ ể ể ế ớ ư

Hình 3.33: L p trình ph n <head> c a htmlậ ầ ủ

Một phần của tài liệu Ứng dụng iot để điều khiển một số hệ thống trên ô tô (Trang 54)

Tải bản đầy đủ (DOCX)

(88 trang)
w