Kiểm tra:
- Cấp nguồn 5VDC cho mạch (nằm ở jack cắm 6 chân hình 4.6).
- Cấp lần lượt nguồn 5VDC vào chân tín hiệu (nằm ở jack cắm 6 chân hình 4.6). Nếu relay tương ứng có đóng ngắt là được.
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 48
4.3 ĐĨNG GĨI VÀ THI CƠNG MƠ HÌNH
4.3.1 Đóng gói bộ điều khiển
a. Mơ hình sơ bộ đóng gói bộ điều khiển
Hình 4.7. Hình sơ bộ đóng gói bộ điều khiển. b. Mơ hình đóng gói bộ điều khiển hồn thành
CHƯƠNG 4. THI CƠNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 49 4.3.2 Thi cơng mơ hình
a. Mơ hình sơ bộ hệ thống:
Hình 4.9. Mơ hình sơ bộ hệ thống.
Chú thích cho mơ hình:
- Kích thước 80x40x30 (DxRxC).
- Cảm biến đi theo đèn là module cảm biến sáng. - Cảm biến đi theo quạt là module cảm biến tốc độ. - Cảm biến đi theo bơm là module cảm biến lưu lượng.
- Cảm biến nằm gần LCD bao gồm module cảm biến nhiệt và module cảm biến khí ga.
- Ở LCD là hộp thiết bị chứa cả kit Arduino, màn hình LCD, nút nhấn. - Bên cạnh hộp là thiết bị là mạch relay 4 kênh và chuông.
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 50
- Điện thoại: dùng hệ điều hành Android.
b. Mơ hình hồn thành hệ thống:
CHƯƠNG 4. THI CƠNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 51
4.4 LẬP TRÌNH HỆ THỐNG
4.4.1 Lưu đồ giải thuật a. Lưu đồ chính của hệ thống a. Lưu đồ chính của hệ thống Lưu đồ Hình 4.11. Lưu đồ chương trình chính. Bắt đầu Lệnh từ Androi Giám sát Nhấn nút mode Chương trình mode Cập nhật trạng thái các thiết bị Điều khiển các thiết bị Đo nhiệt độ, độ ẩm, đồng hồ, kiểm tra khí ga, hiển thị LCD
Lệnh điều khiển Lệnh cập nhật Đ S S Đ Đ S S Đ Khởi tạo ngoại vi: LCD, DHT11, MQ2,
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 52
Giải thích lưu đồ
Chương trình chính là 1 vịng lập vô hạn từ trên xuống dưới lặp đi lặp lại luân phiên. Đầu tiên sẽ thực hiện hàm giám sát, kiểm tra thiết bị có bị lỗi (hư) hay khơng. Giám sát xong nó sẽ xét xem có lệnh từ android xuống hay khơng, nếu có thì nó xem có phải lệnh điều khiển hay không, nếu phải thì điều khiển các thiết bị theo ý người dùng, nếu khơng thì nó xem tiếp có phải lệnh cập nhật hay khơng, nếu phải thì sẽ cập nhật trạng thái lên android, nếu khơng thì khơng làm gì cả. Đến cơng việc tiếp theo là hiển thị các thông tin lên LCD, hiển thị xong đến việc xét nút nhấn mode, nếu có nhấn thì vào trình mode nếu khơng thì làm tiếp cơng việc là giám sát khí gas, nếu có khí gas thì báo động, nếu khơng thì kết thúc vịng lặp, trở lại giám sát thiết bị.
b. Lưu đồ của chương trình Mode
Lưu đồ
Hình 4.12. Lưu đồ chương trình Mode.
Bắt đầu Nhấn 1 Nhấn 2 Nhấn 3 Nhấn Exit Chương trình chỉnh đồng hồ RTC Chương trình điều khiển thiết bị Chương trình test thiết bị Kết thúc Đ Đ Đ Đ S S S S
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 53
Giải thích lưu đồ
Ở chế độ Mode, khi nhấn nút 1 sẽ vào chương trình chỉnh đồng hồ RTC. Khi chỉnh xong nhấn nút Exit để quay về chế độ Mode. Tương tự, nhấn nút 2 vào chương trình điều khiển thiết bị và nút 3 vào chương trình test thiết bị.
c. Lưu đồ của chương trình RTC
Lưu đồ Hình 4.13. Lưu đồ chương trình RTC. Bắt đầu Mode = 0 Nhấn nút Mode Mode = Mode +1 Mode = 7 Mode = 0 Mode = 1 Chỉnh giờ Nhấn exit Mode = 2 Chỉnh phút Chỉnh thứ Kết thúc S S Đ Đ Mode = 6 S S S S Đ Đ Đ
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 54
Giải thích lưu đồ
Khi vào chương trình RTC, mode bằng 0. Sau đó cứ nhấn nút mode là mode được tăng lên 1 đơn vị. Khi mode bẳng 7 sẽ quay về 0. Với mode bằng 1 sẽ vào chỉnh giờ, mode bằng 2 sẽ vào chỉnh phút, mode bằng 3 sẽ vào chỉnh ngày, mode bằng 4 sẽ vào chỉnh tháng, mode bằng 5 sẽ vào chỉnh năm, mode bằng 6 sẽ vào chỉnh thứ. Nhấn Exit chương trình kết thúc.
d. Lưu đồ chương trình điều khiển thiết bị ( ON/OFF )
Lưu đồ
Hình 4.14. Lưu đồ chương trình điều khiển thiết bị.
Giải thích lưu đồ
Khi nhấn nút 1 thì sẽ đảo trạng thái đèn (đang sáng thì tắt và ngược lại). Sau đó sẽ kiểm tra trạng thái của đèn và báo qua điện thoại Android để đồng bộ. Tương tự, nhấn nút 2 thì sẽ đảo trạng thái quạt (đang quay thì tắt và ngược lại). Sau đó sẽ kiểm tra trạng thái của quạt và báo qua điện thoại Android để đồng bộ. Khi nhấn nút 3 thì sẽ đảo trạng thái bơm (đang bơm nước thì tắt và ngược lại). Sau đó sẽ kiểm tra trạng thái của bơm và báo qua điện thoại Android để đồng bộ. Nhấn Exit chương trình kết thúc.
Bắt đầu Nhấn 1 Nhấn 2 Nhấn 3 Nhấn Exit Kết thúc Đảo trạng thái đèn, kiểm tra và báo qua đ.thoại
Androi
Đảo trạng thái quạt, kiểm tra và
báo qua đ.thoại Androi
Đảo trạng thái bơm, kiểm tra và báo qua đ.thoại Androi S S S S Đ Đ Đ Đ
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 55 e. Lưu đồ chương trình Test
Lưu đồ
Hình 4.15. Lưu đồ chương trình Test.
Giải thích lưu đồ
Khi nhấn nút 1 thì sẽ bật đèn. Sau đó nhấn giữ nút 1 sẽ kiểm tra độ sáng của đèn. Tương tự, nhấn nút 2 thì sẽ bật quạt. Sau đó nhấn giữ nút 2 để kiểm tra tốc độ cao nhất của quạt. Khi nhấn nút 3 thì sẽ bật bơm. Sau đó nhấn giữ nút 3 để kiểm tra lưu lượng cao nhất của bơm trong 1 giờ là bao nhiêu. Nhấn Exit chương trình kết thúc.
Bắt đầu Nhấn 1 Nhấn 2 Nhấn 3 Nhấn Exit Bật đèn, kiểm tra độ sáng Bật quạt, kiểm tra tốc độ Bật bơm, kiểm tra lưu lượng
Còn nhấn Còn nhấn Còn nhấn Kết thúc S S S S Đ Đ Đ Đ Đ Đ Đ S S S
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 56 f. Lưu đồ chương trình giám sát
Lưu đồ
Hình 4.16: Lưu đồ chương trình giám sát.
Giải thích lưu đồ
Khi vào chương trình chính hệ thống sẽ kiểm tra sự cố trước. Nếu sự cố xảy ra cho thiết bị đèn (được cấp nguồn mà khơng sáng) thì sẽ báo lỗi và ngắt nguồn ngay. Tương tự, nếu sự cố xảy ra cho thiết bị quạt (được cấp nguồn mà khơng quay) thì sẽ báo lỗi và ngắt nguồn ngay. Nếu sự cố xảy ra cho thiết bị bơm (đang bơm mà hết nước) thì sẽ báo lỗi và ngắt nguồn ngay.
Bắt đầu Sự cố máy bơm Kiểm tra sự cố Sự cố bóng đèn Sự cố máy quạt
Tắt đèn, bão lỗi Tắt quạt, bão lỗi Tắt bơm, bão lỗi
Kết thúc
S S S
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 57 g. Lưu đồ của điện thoại
Lưu đồ
Hình 4.17. Lưu đồ chương trình điện thoại.
Giải thích lưu đồ
Khi mở app hệ thống sẽ cần kết nối Bluetooth. Sau đó kích hoạt các luồng chạy ngầm từ Arduino lên để cập nhật trạng thái các thiết bị hiện tại cho app trên điện thoại. Nếu ta điều khiển trên điện thoại thì sẽ gửi dữ liệu về cho Arduino để thay đổi trạng thái thiết bị.
4.4.2 Phần mềm lập trình Arduino IDE a. Giới thiệu phần mềm lập trình a. Giới thiệu phần mềm lập trình
Các thiết bị dựa trên nền tảng Arduino được lập trình bằng ngơn ngữ riêng. Ngơn ngữ này dựa trên ngôn ngữ Wiring được viết cho phần cứng nói chung. Và Wiring lại là một biến thể của C/C++. Một số người gọi nó là Wiring, một số khác thì gọi là C hay C/C++. Riêng trong đề tài này thì nó được gọi là “ngôn ngữ Arduino”, và đội ngũ phát triển Arduino cũng gọi như vậy. Ngôn ngữ Arduino bắt nguồn từ C/C++ phổ biến
Bắt đầu
Khai báo thư viện. Khai báo luồng chạy ngầm. Khai báo kết
nối Bluetooth
Kết nối Bluetooth
Kích hoạt luồng chạy ngầm để
nhận dữ liệu Gửi dữ liệu về thiết bị để cập nhật
Cập nhật các đối tượng trên ứng dụng
Các đối tượng được cập nhật bởi người dùng
S
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 58
hiện nay do đó rất dễ học, dễ hiểu. Nếu học tốt việc lập trình với ngơn ngữ C đã được học ở mơn “Kĩ thuật lập trình giao tiếp” thì việc lập trình Arduino sẽ rất dễ dàng. Để lập trình cũng như gửi lệnh và nhận tín hiệu từ mạch Arduino, nhóm phát triển dự án này đã cũng cấp đến cho người dùng một mơi trường lập trình Arduino được gọi là Arduino IDE (Intergrated Development Environment).
b. Các bước cài đặt Arduino IDE:
Bước 1: Truy cập địa chỉ http://arduino.cc/en/Main/Software/ .
+ Đây là nơi lưu trữ cũng như cập nhật các bản IDE của Arduino. Bấm vào mục Windows ZIP file for non admin install như hình.
Hình 4.18. Giao diện download IDE.
+ Bạn sẽ được chuyển đến một trang mời quyền góp tiền để phát triển phần mềm cho Arduino, tiếp tục bấm JUST DOWNLOAD để bắt đầu tải như hình.
CHƯƠNG 4. THI CƠNG HỆ THỐNG
BỘ MƠN ĐIỆN TỬ CÔNG NGHIỆP 59 Hình 4.20. Chọn thư mục lưu file tải về.
Bước 2: Sau khi download xong, bấm chuột phải vào file vừa download arduino-
1.6.4-windows.zip và chọn “Extract here” để giải nén.
Hình 4.21. Giải nén thư mục tải về.
Bước 3: Copy thư mục arduino-1.6.4 vừa giải nén đến nơi lưu trữ.
Bước4: Chạy file trong thư mục arduino-1.6.4 để khởi động Arduino IDE.
4.4.3 Phần mềm lập trình Android Studio
a. Giới thiệu phần mềm lập trình Android Studio (cho điện thoại).
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 60
I/O 2013. Dựa trên “IntelliJ IDEA Community Edition”, công cụ này hoạt động giống WYSIWYG, cho phép lập trình viên tạo ứng dụng, dễ dàng thực hiện các thay đổi và xem trước trong thời gian thực, đồng thời cũng có khả năng tăng tốc sản phẩm, thiết kế giao diện đẹp hơn trước. Đặc biệt là Tiếng Việt cũng được hỗ trợ trong Android Studio. Android Studio hỗ trợ một loạt các cách giả lập để xem trước ứng dụng, vì vậy ngay cả khi khơng có thiết bị thử nghiệm, ta vẫn có thể chắc chắn rằng mọi thứ đều hoạt động trơn tru. Android Studio sử dụng nền tảng ngơn ngữ Java để lập trình xây dựng ứng dụng.
b. Các bước cài đặt Androi Studio:
Bước 1: Đầu tiên các vào trang Developer của android, bấm vào nút Download
Android Studio for Windowns để tải về Android Studio, liên kết để truy cập: https://developer.android.com/intl/vi/sdk/index.html
Hình 4.22. Giao diện tải Androi Studio.
+ Sau khi bấm vào đó sẽ hiện ra một mục Điều khoản và Điều kiện, ta tích vào Tơi đã đọc và đồng ý với các điều khoản và điều kiện trên và bấm vào nút download ngay phía bên dưới.
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 61 Hình 4.23. Chọn điều khoản và tải Androi Studio.
Bước 2: Cài đặt Android Studio trên Windows:
+ Chạy file android-studio-bundle-141.2456560-windows.exe (đây là phiên bản lúc ) vừa tải về. Màn hình giới thiệu của Android Studio xuất hiện, nhấn Next để tiếp tục.
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 62
+ Đánh dấu vào các thành phần muốn cài đặt. Sau đó nhấn Next để tiếp tục:
Hình 4.25. Đánh dấu vào các thành phần bạn muốn cài đặt.
+ Chọn I Agree để chấp nhận các điều khoản trong giấy phép sử dụng của Android Studio.
Hình 4.26. Chọn I Agree để chấp nhận cài đặt.
+ Chọn vị trí để cài đặt Android Studio (dung lượng tối thiểu 500 MB) và vị trí cài đặt SDK (dung lượng tối thiểu 3.2 GB). Nhấn Next để tiếp tục:
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 63 Hình 4.27. Chọn ổ đĩa để cài đặt.
+ Chọn dung lượng bộ nhớ cho HAXM, khoảng 2 - 3GB là đủ.
Hình 4.28. Chọn dung lượng bộ nhớ cho HAXM.
+ Cuối cùng, chọn Install để quá trình cài đặt được bắt đầu.
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 64
Bước 3: Chạy Android Studio
+ Khi chạy ứng dụng lần đầu sẽ có hộp thoại hỏi ta có import setting từ những version android đã có hay khơng, bước này ta có thể bỏ qua khơng cần quan tâm.
Hình 4.30. Chọn dịng thứ 2 để chạy ứng dụng.
+ Chọn giao diện, mặc định có 2 giao diện, đen và trắng ta có thể thay đổi trong mục cài đặt sau khi khởi động.
+ Ở lần chạy đầu tiên, Android cần phải tải về một số thành phần. Ta cần phải chờ đợi cho đến khi tải về và cài đặt q trình hồn thành là xong.
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 65 c. Viết chương trình hệ thống
Đối với người thực hiện đề tài này, tự nhận thấy là một người khơng chun về lập trình trên mơi trường Android Studio nên trong đề tài ta chỉ cần quan tâm đến ba thành phần chính trong Adroid Studio để phát triển ứng dụng phục vụ yêu cầu của đề tài. Ba thành phần đó là: AndroidMainfest.xml, activity_main.xml và MainActivity.java. AndroidMainfest.xml.
Trong bất kỳ một project Android nào khi tạo ra đều có một file
AndroidMainfest.xml, file này được dùng để định nghĩa các screen (màn hình, sau
này ta dùng tên là Activity) sử dụng, các permission (các cấp quyền) cũng như các theme (chủ đề) cho ứng dụng. Đồng thời nó cũng chứa thơng tin về phiên bản SDK
cũng như Main_Activity sẽ chạy đầu tiên. Trong file AndroidMainfest.xml bao giờ
cũng có 3 thành phần chính đó là: Application, permission và version.
Trong đề tài này, chúng ta chỉ cần quan tâm đến thành phần permission trong AndroidMainfest.xml. Vì chúng ta cần cấp phát quyền sử dụng các yếu tố trên thiết
bị Adroid như: Bluetooth cho ứng dụng để thực hiện yêu cầu của đề tài. Các thành phần khác ta sẽ để mặc định (default).
AndroidMainfest.xml
Hình 4.32. Nội dung của file AndroidMainfest.xml.
Ở hình trên, ta có thể dễ dàng nhận thấy có nội dung đã được cấp quyền đó là: + Quyền sử dụng Bluetooth với cú pháp:
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> <uses-permission android:name="android.permission.BLUETOOTH"/>
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 66
Activity_main.xml
+ Trong một project Android, file activity_main.xml là nơi chứa các thông tin về thiết kế giao diện ứng dụng (chỉ của riêng màn hình chính của ứng dụng). Các đối tượng tương tác trên ứng dụng như: Nút nhấn(Button), danh sách (ListView), nhãn (TextView), v.v… đều được mô tả chi tiết trên file này.
+ Có 2 thành phần chính trong activity_main.xml đó là: Design và Text.
Design: Là thành phần chứa các đối tượng lập trình của ứng dụng. Giao diện
của thành phần này bao gồm:
- Cột trái: Danh sách các đối tượng xếp theo nhóm (Layout, Widgets, Text Fields, Containers, v.v…).
- Cột giữa: Mô phỏng giao diện thực tế (các đối tượng sẽ được thiết kế vào đây).
- Cột phải: Nơi xác định những thuộc tính của đối tượng.
Hình 4.33. Thành phần Design của activity_main.xml.
Text: Là thành phần mơ tả một cách chi tiết thuộc tính của từng đối tượng đã
CHƯƠNG 4. THI CÔNG HỆ THỐNG
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP 67
- Khi người lập trình có nhu cầu điều chỉnh một cách chính xác các thuộc tính của đối tượng như: Địa chỉ, chiều cao, độ rộng, khoảng cách giữa các thuộc tính, vị trí, màu sắc, v.v… trên giao diện thiết kế thì có thể can thiệp vào thành phần này.
- Nếu như việc thiết kế chỉ mang tính tương đối thì ta chỉ việc kéo thả và điều chỉnh đối tượng sao cho vừa ý trong thành phần Design mà không cần can thiệp vào thành phần Text.