Đ xây d ngă l uă đ đi u khi n h th ng nâng h kính không dây bằng sóng Bluetooth, ta d a vào ch cănĕngăc a b môt ,ăcompaăvƠăcôngăt căđi u khi n trên ô tôăđ xây d ng.
3.2.1. Ch cănĕngăvƠătínhănĕngăho tăđ ng của h th ng nâng h kính cầnăđi u khi n.
STT Ch cănĕng Ch đ ho tăđ ng
1 Ch cănĕngăđóng / m bằng tay.
Khi công t c cửa s đi n bị kéoălênăhayăđẩy xu ng gi a chừng thì cửa s sẽ m hayăđóngă choăđ n khi th công t c ra
2
Ch cănĕngăt đ ngăđóng / m cửa s bằng m t l n
n.
Khi công t căđi u khi n cửa s đi n bị kéo lên hoặcăđẩy xu ng hoàn toàn, thì cửa s sẽ đóngă và m hoàn toàn. M t s xe chỉ có ch cănĕngă m t đ ng và m t s xe chỉ có ch că nĕngă đóng / m t đ ng cho cửa s phíaăng i lái.
3 Ch cănĕngăkhóaăcửa.
Khi b t công t c khoá cửa s , thì không th m hoặcăđóngăt t c các cửa kính trừ cửa s phíaăng i lái.
4 Ch că nĕngă ch ng kẹt cửa s .
Trongăquáătrìnhăđóngăcửa s t đ ng n u có v t th l kẹt vào cửa kính thì ch cănĕngănƠyă sẽ t đ ng dừng cửa kính và dịch chuy n nó xu ng kho ng 50 mm.
71 5 Ch cănĕngăđi u khi n cửa
s khi t tăkhóaăđi n.
Ch cănĕngănƠyăchoăphépăđi u khi n h th ng cửa s đi n trong kho ng th i gian 45 giây sau khi t tă khoáă đi n v vị trí ACC hoặc LOCK, n u cửaăxeăphíaăng i lái không m . B ng 3.2: Ch cănĕngăđi u khi n nâng h kính.
Trong mô hình, ch cănĕngăbáo kẹt cửa s đ c th hi n bằng tín hi uăđènăg n trên công t c chính ngay ch ng iăláiăđi u khi n,ăđặc bi t báo kẹt ngay c khiăđi u khi n bằng công t c chính l n công t c ph . Từc ăs này ta có th ng d ng trên xe th c t .
3.2.2. Xây d ngăl uăđ .
a. L uăđ gi i thu t chung.
Khi nh năńtăđi u khi n trên công t căchínhăthìăviăđi u khi n sẽ nh n tín hi u.
Sauăđó,ănóăsẽ xử lý mã hóa tín hi u và phát tín hi uăđi u khi n ch cănĕngăđ n cửa s c năđi u khi n qua b phát sóng Bluetooth (b phát sóng Bluetooth này có tích h p c thu sóng Bluetooth). Từng cửa s sẽđ c b trí m chăđi u khi n có trang bị b thu sóng Bluetooth. T iăđơy,ăcácătínăhi u sẽđ c nh năvƠăviăđi u khi n sẽ sử lý vƠăđi u khi nătheoănh ăyêuăc u c a tín hi uăđƣănh n.
L uăđ thu tătoánăchungăđ c trình bày theo hình 3.1 bênăd i.
Trong th i gian giao ti p qua l i gi a các module, các module này ph i thu, phát theo trình t v th iăgianăđ ng th i m ch thu, phát ph i th c hi n theo cung l nh truy năđƣăđ c l p trình mã hóa và phân lo i.
72
Hình 3.1: L uăđ thu t toán chung.
Gửi l nhăđi u khi n nâng
Gửi l nhăđi u khi n h
không Đi u khi n lock
Gửi l nh lock có không
có B tăđ u
Đi u khi n nâng ki ng Ghépăđôiă2ămodule
Đi u khi n h ki ng
Có auto
Gửi l nh Stop không
có
có
không
73
b. L uăđ đi u khi năch ngătrìnhăph́tăcủa MASTER ( ECU).
Hình 3.2: L uăđ gi i thu tăch ngătrìnhăphát.
có
Gửi l nhăđi u khi n h Gửi l nhăđi u khi n nâng không
có B tăđ u
Đi u khi n nâng ki ng?
Ghépăđôiă2ămodule
Đi u khi n h ki ng?
không
có
Gửi l nh lock
không Đi u khi n lock?
có Có auto?
Gửi l nh Stop không
74 Ch ngătrìnhăchínhăho tăđ ngănh ăsau:
- Khiăch ngătrìnhăb tăđ u, th c hi n nhi m v ghépăđôiăhaiămodule.
- L nhăđi u khi nănơngăkínhăcóăhaiătr ng h p, n uănơngăkínhăthìăch ngătrìnhă th c thi l nh nâng kính, n uăkhôngăthìăđ i l nh ti p theo.
- L nhăđi u khi n h kínhăcóăhaiătr ng h p, n u h kínhăthìăch ngătrìnhăth c thi l nh h kính, n uăkhôngăthìăđ i l nh ti p theo.
- L nhăđi u khi n nâng hay h kính mà có auto, n u có thì không gửi l nh Stop và quét nút Lock, n u không thì gửi l nh stop và l nh pin Lock.
- L nhăđi u khi n Lockăcóăhaiătr ng h p, n u có gửi l nh Lock, n u không quay l i từđ u.
Từ l uăđ gi i thu tăch ngătrìnhăphátătaăxơyăd ng m tăl uăđ đi u khi n cho ch ngătrìnhăphátănh ăhìnhăbênăd i. D aăvƠoăl uăđ đi u khi n này ta vi tăch ngă trình chính cho h th ngăđi u khi n nâng h kính bên Master.
75
Hình 3.3: L uăđ đi u khi n ch ngătrìnhăchínhăc a Master (Ecu).
có B TăĐ U
KH I T O BLUETOOTH
GHÉPăĐÔIă2ăMODULE
T t led báo kẹt, xóa bit nh Auto, xóa bit t m nút nh n
Nh n nút lock
Nh n nút nâng ki ng
Led báo kẹt b t
Gửi m t l nh g mălockăvƠăđi u khi n nâng ki ng, xóa bit nh nút nh n
Nh n nút Auto
Cho bit nh Auto lên 1
Xóa bit nh Auto
Gửi m t l nh g mălockăvƠăđi u khi n nâng ki ng, cho bit t m nút nh n lên 1 có
Không
có Không
có
Không
có Nh n nút h ki ng
Gửi m t l nh g mălockăvƠăđi u khi n h ki ng, xóa bit nh nút nh n Không
có
Không
Nh n nút Auto Xóa bit nh Auto
Gửi m t l nhăng ngđ ngăc ,ăchoăbitănh Auto lên 1, cho bit nh nút nh n lên 1
Có ch đ Auto Cho bit nh Auto lên 1
Không
có
76
Hình 3.4: L uăđ đi u khi năch ngătrìnhăng t c a Master (Ecu).
Ch ngătrìnhăng t ho tăđ ngănh ăsau: B tăđ uăch ngătrình,ăchoăd li u nh n vào ki m tra có v t kẹt hay không. N u có b tăđèn báo kẹt và k tăth́căch ngătrình.ă N uăkhôngăthìăđènăbáoăkẹt t t và k tăth́căch ngătrình.
L uăđ đi u khi n c a Master g m hai ph năt ngă ng v iăch ngătrìnhăchínhă vƠăch ngătrìnhăng t khi l p trình cho h th ng.ăCh ngătrìnhăchínhăv n ho tăđ ng bìnhăth ngănh ăcácăch ngătrìnhăkhác,ănh ng khi phát hi n tín hi u có câu l nh ch yăchoăch ngătrìnhăng tăthìăch ngătrìnhăsẽ uătiênăch yăchoăch ngătrìnhăng t.
Sau khi ch yăxongăch ngătrìnhăng t, h th ng sẽ quay v ch yăch ngătrìnhăchínhă nh ăbìnhăth ng.
TăĐ U
B tăđ u
Cho d li u nh n vào bi n temp
Có v t bị kẹt
B tăđènăbáoăkẹt T tăđènăbáoăkẹt
K t thúc
Không có
77
c. L uăđ đi u khi năch ngătrìnhăthuăcủa SLAVE
Hình 3.5: L uăđ gi i thu tăch ngătrìnhăthu.
có không
Th c hi n l nhăđi u khi n h kính
Gửi l nh báo kẹt cho Master và xử lý kẹt
Kẹt cửa?
có có không
L nh h ki ng Slave?
Th c hi n l nhăđi u khi n nâng kính có
Đi u khi n theo l nh Master có
L nh nâng ki ng Slave?
không
Master khóa?
không
B tăđ u
Masterăđi u khi n?
Nh p d li u
không
78 Ch ngătrìnhăthuăc a bên Slaveănh ăsau: - Ch ngătrìnhăb t đ u, nh p d li u.
- Ki m tra nút nh năxemăcóăbênăMasterăcóăđi u khi n không, n u có làm theo l nh c a Master, n u không ti p t c ki m tra nút bên Slave.
- N u bên Master có l nh khóa thì làm l nh khóa, n u không thì làm l nh bên Slave.
- Slaveăđi u khi n nâng, n u có thì th c hi n l nh, n uăkhôngăthìăđ i l nh khác.
- Slaveăđi u khi n h , n u có thì th c hi n l nh, n uăkhôngăthìăđ i l nh khác.
- T t c các l nh đ u ph i ki m tra l nh có kẹt cửa không, n u có xử lý kẹt r i gửi tr l i cho Master. N u không thì ti n hành làm các l nh còn l i, làm xong b t đ u l i từđ u.
79
Hình 3.6: Ch ngătrìnhă chính SLAVE.
!BotLocate/
Buttop down == MotorControl(ControlDown) có
không
!BotLocate == 0 và temp2 ==3 or
!TopLocate == 0 và temp 2 == 1 MotorControl(Stop)
có không
Đ ngăc ăbị kẹt không
MotorControl(temp2^2);Delay_ms(100) MotorControl(Stop)
temp2=CControlValue^2;Putc(0xaa);// bao ket có
không
không
Master khóa
!TopLocate/
Buttop up == 0 MotorControl(ControlUp) có
B tăđ u
HbrigeControl(stop);Temp2 = 0 Master không khóa
Masterăđi u khi n Đi u khi n theo l nh Master có
không
có CcontrolValue == temp2
i == 200 MotorControl(CControlValue);
Putc(0x55);// bao khong ket
có
không Delay_ms(100);
MotorControl(CControlValue);
Putc(0x55);// bao khong ket có
không
80
Hình 3.7: Ch ngătrìnhăng t SLAVE.
Ch ngătrìnhăng t cùa Slave:
- B tăđ uăch ngătrình ki m tra d li uăđangăcó.
- Ki m tra có kẹt không, n u bi n t m báo là m t thì có th căthiăch ngătrìnhăbáo kẹt cửa và gửi v Master, n u bi n t m bằng 0 thì k t thúc.
- ụănghĩaăch ngătrìnhă ng tălƠăkhiă đangăth c hi năch ngătrìnhăchínhă mƠă xu t hi n m t tín hi u gửi tr d li u v thì l p t călƠmăch ngătrìnhăng t, sau khi th c hi năch ngătrìnhăng t xong thì m i quay l iălƠmăch ngătrìnhăchính.
B tăđ u
Temp = getc ();
Temp = temp và 0b00000011
(temp và 4) == 4
Bit_temp = 0;
Bit_temp = 1;
End Có
không
81
CH NGă4
MÔ HÌNH VÀ TH C NGHI M