LẬP TRÌNH HỆ THỐNG

Một phần của tài liệu Thiết kế và thi công mô hình cửa hàng giặt sấy tự động phục vụ (Trang 67)

4.4.1. Lưu đồ giải thuật

a. Lưu đồ giải thuật Arduino MEGA2560

 Lưu đồ giải thuật chương trình chính:

Bắt đầu

Khởi tạo Serial,

RFID, SPI, các chân I/O Relay bật Đọc cảm biến dòng Quét mã thẻ Xử lí chuỗi TT ngõ vào = N Đ S S Bật Relay Run_stop Kết thúc Đ

Hình 4.15. Lưu đồ giải thuật chương trình chính Arduino MEGA2560

Giải thích lưu đồ:

Khi khởi động hệ thống, Arduino MEGA2560 tiến hành khởi tạo tốc độ giao tiếp Serial với máy tính, tốc độ giao tiếp SPI với module RFID và các chân vào ra để giao

tiếp với module relay, cảm biến dòng và buzzer. Sau đó kiểm tra xem relay có bật không, nếu có thì tiến hành đọc cảm biến dòng, ngược lại thì cho quét thẻ để lấy ID và gửi qua cổng Serial. Nhận dữ liệu từ máy tính và tiến hành tách chuỗi, nếu trong chuỗi nhận về có kí tự “N” thì tiến hành bật relay và chạy chương trình con Run_stop rồi kết thúc.

 Lưu đồ giải thuật chương trình con quét mã thẻ: Giải thích lưu đồ:

Khi được gọi, chương trình kiểm tra xem có thẻ hay không, nếu có tiến nhận mã thẻ và bật chuông để báo hiệu thẻ đã được đọc thành công. Sau đó gửi chuỗi mã thẻ qua cổng Serial để lưu vào cơ sở dữ liệu và xử lí.

Đọc mã thẻ

Có thẻ mới

Thẻ đã đọc

Bật chuông Gửi dữ liệu qua

cổng Serial Kết thúc Đ Đ S S

Hình 4.16. Lưu đồ chương trình con đọc mã thẻ

 Lưu đồ giải thuật chương trình con đọc cảm biến dòng:

Khi được gọi, chương trình tiến hành đọc dữ liệu từ ADC, sau đó tính toán giá trị của dòng điện hiệu dụng theo công thức: Arms = Vrms/độ nhạy cảm biến dòng. Sau đó kiểm tra xem nếu giá trị của dòng điện hiệu dụng bé hơn hoặc bằng 0.15 thì gán biến

b. Lưu đồ giải thuật Arduino UNO

 Lưu đồ giải thuật chương trình chính: Giải thích lưu đồ:

Khi khởi động hệ thống, Arduino UNO tiến hành khởi tạo tốc độ giao tiếp Serial với máy tính, tốc độ giao tiếp SPI với module RFID, khởi tạo LCD và các chân vào ra để buzzer. Sau đó thực hiện việc quét mã thẻ và gửi qua cổng Serial. Nhận dữ liệu từ máy tính và tiến hành xử lí chuỗi rồi hiển thị thông tin khách hàng ra màn hình LCD. Nếu hết thời gian hiển thị thông tin khách hàng thì tiến hành reset LCD rồi thực hiện vòng lặp mới. Đọc cảm biến dòng Đọc ADC Tính Arms=Vrms/ độ nhạy cảm biến Arms <= 0.15 Cb_dong = 0 Cb_dong = 1 Kết thúc Đ S Bắt đầu Khởi tạo Serial,

SPI, LCD, các chân I/O Quét mã thẻ Xử lí chuỗi Millis-timeX > 3000 Reset LCD Kết thúc S Đ

 Lưu đồ chương trình con Quét mã thẻ: Tương tự như chương trình của MEGA2560.

 Lưu đồ chương trình con xử lí chuỗi:

Khi được gọi, chương trình kiểm tra xem có dữ liệu truyền từ máy tính về không. Nếu có thì tiến hành tách chuỗi đó và hiển thị các thông tin ra màn hình LCD. Ngược lại thì tiếp tục kiểm tra lại từ đầu.

Bắt đầu Kết thúc Nhận dữ liệu từ cổng Serial Tách chuỗi và hiển thị ra LCD S Đ

Hình 4.19. Chương trình con Xử lí chuỗi

c.Lưu đồ giải thuật C#

 Lưu đồ giải thuật chương trình quản lý: Giải thích chương trình:

Khi chương trình vừa khởi động, form quản lí khách hàng sẽ khởi động. Nếu sử dụng form thì kết nối với cơ sở dữ liệu để truy xuất thông tin khách hàng. Đồng thời kiểm tra xem dữ liệu có khớp với dữ liệu từ Arduino UNO gửi lên hay không. Nếu đúng thì cập nhật dữ liệu và kết thúc. Ngược lại thì tiếp tục kiểm tra lại từ đầu.

Khi sử dụng form thông tin khách hàng, chương trình sẽ tiến hành truy xuất cơ sở dữ liệu. Sau đó tiếp hành so sánh với dữ liệu gửi lên từ Arduino UNO. Nếu đúng thì cho phép sửa chữa các thông tin khách hàng và cập nhật cơ sở dữ liệu. Nếu sai thì thực hiện

Bắt đầu

Quản lý khách hàng Thông tin khách hàng Nạp tiền

Kết nối cơ sở dữ liệu với Arduino UNO

Kết nối cơ sở dữ liệu với Arduino UNO

Kết nối cơ sở dữ liệu với Arduino UNO

Kiểm tra dữ liệu từ Arduino UNO

Kiểm tra dữ liệu từ Arduino UNO

Kiểm tra dữ liệu từ Arduino UNO

Hiện thông tin và cập nhật dữ liệu

Cho phép thêm , sửa, xóa thông tin trong cơ sở dữ

liệu

Nạp tiền vào tài khoản cho khách hàng Kết thúc Cập nhật dữ liệu Cập nhật dữ liệu Đ S S S Đ Đ Đ Đ Đ S S S

Hình 4.20. Lưu đồ giải thuật chương trình quản lý

 Lưu đồ giải thuật chương trình vận hành Giải thích lưu đồ:

Khi chương trình vừa khởi động xong thì tiến hành thiết lập kết nối đến cơ sở dữ liệu. Sau đó tiến hành kiểm tra dữ liệu từ Arduino, nếu sai thì tiếp tục kiểm tra. Ngược lại, nếu có dữ liệu từ Arduino truyền về thì tiếp tục kiểm tra có mã thẻ có khớp với thông tin có trong cơ sở dữ liệu hay không. Nếu không thì không cho bật máy, ngược lại nếu thông tin khách hàng có trong cơ sở dữ liệu thì gửi tín hiệu cho phép cho Arduino MEGA cho phép máy giặt hoạt động và cập nhật trạng thái hoạt động của máy giặt rồi kết thúc.

Bắt đầu

Kết nối cơ sở dữ liệu với Arduino UNO

Điều khiển Arduino MEGA không cho máy giặt hoạt động Kiểm tra dữ liệu từ

Arduino UNO

Kiểm tra thông tin hành khách

Cập nhật dữ liệu của các máy giặt hoạt động Gửi dữ liệu lại Arduino MEGA cho phép máy giặt

hoạt động Kết thúc Đ Đ S S

Hình 4.21. Lưu đồ giải thuật chương trình vận hành

4.4.2. Phần mềm lập trình cho máy tính

a. Giới thiệu C# và phần mềm lập trình Visual Studio

C# là một ngôn ngữ lập trình hướng đối tượng (object-oriented) và có thể được sử dụng với cho nhiều mục đích khác nhau (general purpose). C# là ngôn ngữ được phát triển bởi Microsoft và là ngôn ngữ được sử dụng phổ biến trong khuôn khổ .NET

Sử dụng C# chúng ta có thể xây dựng được các ứng dụng phần mềm chạy trên hệ điều hành Windows, các ứng dụng web service, các ứng dụng mobile, các ứng dụng về database và rất nhiều loại dụng khác nữa.

Để tạo project mới, ta vào File/New/Project hoặc tổ hợp phím tắt Ctrl + Shift + N, sau đó đặt tên project, nơi lưu trữ và chọn OK để hoàn thành.

Hình 4.22. Tạo project trong Visual Studio

Sau đó, chương trình sẽ xuất hiện giao diện cho phép chúng ta thiết kế giao diện bằng cách sử dụng các đối tượng có sẵn cùng với các thuộc tính tương ứng.

Sau khi chọn các sự kiện xảy ra, sẽ mở ra giao diện cho phép chúng ta lập trình như sau:

Hình 4.24. Giao diện lập trình trong Visual Studio

Sau khi lập trình xong, chúng ta thực hiện kiểm tra lỗi , sau đó tiến hành Debug bằng cách chọn Start và chạy chương trình.

b. Phần mềm SQL Server Management Studio

SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relational Database Management System (RDBMS) ) sử dụng câu lệnh SQL (Transact-SQL) để trao đổi dữ liệu giữa máy Client và máy cài SQL Server. Một RDBMS bao gồm databases, database engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS.

SQL Server được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn

(Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngàn user. SQL Server có thể kết hợp “ăn ý” với các server khác như Microsoft Internet Information Server (IIS), E-Commerce Server, Proxy Server….

Hình 4.25. Kết nối Server

Để tạo CSDL mới, tạo chuột phải vào Database/New DataBase, chương trình sẽ xuất hiện ra giao diện, đặt tên và chọn OK để tạo Database.

Hình 4.26. Tạo database mới

Tạo bảng

Để tạo bảng mới, ta vào Database chọn Database cần tạo, sau đó chuột phải vào

Hình 4.27. Khởi tạo bảng mới

Để tạo truy vấn mới vào các bảng, ta chọn chuột phải Script Table As, chọn truy vấn muốn thực hiện, chọn New Query Editor Windows và thực hiện.

Cơ sở dữ liệu SQL gồm 3 bảng:  Lưu thông tin đăng nhập hệ thống

Hình 4.29. Bảng quanly

Bảng này chứa các thông tin đăng nhập vào hệ thống của người quản lý: tài khoản, mật khẩu,…

 Lưu dữ liệu thẻ khách hàng

Hình 4.30. Bảng data_KhachHang

Bảng này chứa các thông tin cơ bản của mỗi khách hàng ứng với mỗi tài khoản người sử dụng: mã số nhận diện (ID), họ và tên , ngày tháng năm sinh, giới tính, tiền trong tài khoản,…

 Lưu trữ lịch sử hoạt động của thiết bị vận hành

Bảng này chứa các thông tin về các lần hoạt động gần đây của hệ thống: số máy, tên người sử dụng, ID, ngày sử dụng dịch vụ,…

 Lưu trữ giá mỗi lần sử dụng dịch vụ

Hình 4.32. Bảng data_DonGia

Bảng này chứa đơn giá cho mỗi lần sử dụng dịch vụ.

4.5. TÀI LIỆU HƯỚNG DẪN SỬ DỤNG VÀ THAO TÁC CỦA HỆ THỐNG

4.5.1. Dành cho khách hàng

a. Đăng kí thẻ thành viên

Để sử dụng máy giặt trong cửa hàng thì khách hàng cần đăng kí một thẻ thành viên. Mỗi khách hàng được cấp một thẻ có mã số định dạng (ID) riêng.

Khách hàng cung cấp các thông tin cơ bản để thuận tiện trong quá trình quản lý.

Hình 4.33. Giao diện thông tin khách hàng

b. Sử dụng máy giặt ủi

Bước 1: Khách hàng cần có thẻ nhận diện và số dư tài khoản lớn hơn hoặc bằng

cước phí một lần giặt được quy định trước.

Bước 2: Đến máy giặt không có người sử dụng và dùng thẻ thành viên quét qua

đầu đọc thẻ.

Bước 3: Sau khi quét thẻ hệ thống sẽ kiểm tra thông tin mã thẻ và số tiền còn lại trong tài khoản, khi mọi điều kiện được đều được đáp ứng thì hệ thống tự động mở máy để khách hàng sử dụng.

Bước 4: Sau khi giặt xong máy sẽ tự động ngắt điện, người sử dụng sẽ không

khởi động máy được nữa, để sử dụng lần nữa khách hàng chỉ cần quét thẻ tại đầu đọc.

c. Kiểm tra thông tin thẻ

Hệ thống cung cấp một thiết bị có tên gọi “Thiết bị nhập thông tin” có chức năng:

 Người quản lý sử dụng để quét thẻ và sử dụng phần mềm quản lý khách hàng để thêm, sửa, xóa thẻ khách hàng và nạp tiền vào thẻ thành viên.

 Người sử dụng quét thể trên thiết bị này để kiểm tra họ và tên chủ thẻ cùng với số tiền hiện có trong thẻ được hiển thị trên màn hình LCD.

4.5.2. Người quản lý

a. Phần mềm quản lý khách hàng

Đăng nhập phần mềm bằng tài khoản đăng kí trước:

Để sử dụng được phần mềm thì người quản lí cần đăng nhập bằng một tài khoản đã được cung cấp từ trước để đảm bảo cho việc bảo mật thông tin.

Giao diện quản lí

Các chức năng có thể thực hiện được:

Tra cứu thông tin giao dịch tại thiết bị quét thẻ

Có 2 lựa chọn để tra cứu:

 Tra cứu theo ngày tháng năm sử dụng

Bước 1: Nhấn chọn để tra cứu theo ngày tháng năm

Chọn ngày tháng năm cần tra cứu

Bước 2: Nhấn nút để tìm kiếm

 Tra cứu theo họ tên khách hàng sử dụng

Bước 1: Nhấn chọn để tra cứu theo Họ và Tên

Bước 2: Nhấn nút để tra cứu thông tin

 Khung “QUẢN LÝ QUÉT THẺ” để xem khách hàng nào đang sử dụng bộ thiết bị “Master” để kiểm tra thông tin thẻ.

Hình 4.37. Khung quản lý quét thẻ

 Chuyển tiếp đến giao diện “Thẻ thành viên” và “Nạp tiền”

Ta nhấn chọn hoặc để chuyển đến giao diện chức

năng tương ứng.

Bước 1: Mở giao diện thẻ khách hàng

Bước 2: Quét thẻ RFID mới

Bước 3: Nhập thông tin khách hàng

Bước 4: Nhấn vào nút “Thêm” để hoàn tất quá trình đăng kí mới

Hình 4.38. Giao diện quản lý thẻ khách hàng

Nạp tiền vào thẻ khách hàng

Bước 1: Mở giao diện nạp tiền

Bước 2: Quét thẻ đã được đăng kí từ trước

Bước 3: Nhập số tiền cần nạp vào ô nạp tiền

Bước 4: Nhấn vào ô nạp tiền để hoàn tất quá trình nạp tiền

Sửa, xóa thẻ khách hàng

Bước 1: Mở giao diện quản lý

Bước 2: Quét thẻ cần sửa thông tin hoặc xóa thẻ khỏi hệ thống

Hình 4.39.Giao diện nạp tiền vào thẻ

b. Phần mềm quản lý vận hành hệ thống

Để có thể vận hành và quản lý hệ thống thì cần thêm một phần mềm để quản lý hệ thống.

Hình 4.40.Giao diện phần mềm quản lý hoạt động hệ thống máy giặt

Ứng dụng quản lý cho phép quản lí xem trạng thái hoạt động của các máy giặt: đang tắt hoặc đang hoạt động, nếu đang hoạt động còn cho ta biết mã tag và số dư tài khoản của khách hàng đang sử dụng dịch vụ.

CHƯƠNG 5: KẾT QUẢ VÀ NHẬN XÉT

5.1. KẾT QUẢ ĐẠT ĐƯỢC

Trong thời gian nghiên cứu đề tài từ ngày 18/02/2019 đến ngày 09/05/2019 (16 tuần) nhóm đã học hỏi và nâng cao được rất nhiều kiến thức liên quan đến chuyên môn cũng như kỹ năng chuyên ngành.

5.1.1. Về phần cứng

 Biết được nguyên lý hoạt động của các hệ thống sử dụng công nghệ RFID.

 Biết cách sử dụng module RC522 để đọc, ghi mã thẻ RFID.

 Nâng cao được kĩ năng vẽ mạch in (PCB) sử dụng phần mềm Altium.

 Nâng cao được kĩ năng thi công mạch (hàn linh kiện, kiểm tra các thành phần trong mạch).

 Biết thêm được cấu tạo của module giảm áp AMS1117 board Arduino UNO R3, MEGA2560, vi điều khiển Atmega328, Atmega2560 và dòng vi điều khiển AVR nói chung,

 Đo được dòng điện xoay chiều bằng cách sử dụng cảm biến dòng ACS712 và hiệu ứng Hall.

 Biết cách điều khiển màn hình LCD module chuyển đổi và giao tiếp I2C.

 Thiết kế được mô hình hàng giặt sấy hoạt động ổn định.

5.1.2. Về phần mềm

 Nâng cao kiến thức lập trình cho board mạch Arduino.

 Biết cách tạo một cơ sở dữ liệu bằng SQL và dùng nó để lưu trữ dữ liệu.  Tìm hiểu ngôn ngữ lập trình C# và dùng nó để tạo form quản lý.

 Kết hợp C# với cơ sở dữ liệu viết trên SQL để lưu trữ và truy xuất dữ liệu.  Tìm hiểu cách sử dụng phần mềm Microsoft Studio 2013Microsoft

SQL Server Management Studio 2014

Qua quá trình nghiên cứu đề tài gặp một vài khó khăn dẫn đến như nhược điểm vẫn còn tồn tại:

 Phần mềm quản lý và vận hành vẫn còn đơn giản chưa được tối ưu

 Phần mềm đôi lúc bị chậm, hoạt động ì ạch vì những kiến thức về C# và SQL là những kiến thức tìm hiểu trong thời gian ngắn nên vẫn còn đơn giản và đôi lúc vẫn phát sinh lỗi trong quá trình hoạt động.

5.1.3. Kết quả thực hiện a. Phần cứng

Mô hình sản phẩm khi hoàn thiện:

Hình 5.1. Mô hình sản phẩm

Mô hình hệ thống khi hoàn thiện bao gồm hộp đựng bộ điều khiển trung tâm, các bộ giao tiếp với tải và bộ thêm thông tin khách hàng đặt tại bàn thanh toán.

Bộ thêm thông tin ngoài chức năng đăng kí thẻ thành viên và thêm các thông tin cơ bản còn dùng để thông báo số tiền còn lại trong tài khoản để người sử dụng có thể quản lí một cách thuận lợi, đảm bảo số dư trong tài khoản luôn được duy trì. Mỗi lần quét thẻ thành công sẽ có tiếng “bíp” báo hiệu.

Hình 5.2. Bộ thêm thông tin khách hàng

Nếu thẻ khách hàng chưa được đăng kí, khi quét thẻ ở bộ thêm thông tin sẽ nhận

Một phần của tài liệu Thiết kế và thi công mô hình cửa hàng giặt sấy tự động phục vụ (Trang 67)