Thiết kế cân điện tử giao tiếp máy tính dùng Adruino. Cân trọng lượng là một nhu cầu cần thiết và không thể thiếu trong đời sống xã hội, từ người nông dân đến các khu chế xuất, các nhà máy, xí nghiệp, ... Xuất phát từ nhu cầu thực tế và ứng dụng công nghệ vi điều khiển các nhà khoa học đã nghiên cứu ra các loại cân điện tử hiển thị số có thể cân được trọng lượng từ mg đến hàng trăm tấn mà các loại cân cơ học bình thường không thể thực hiện được. Trên thực tế các siêu thị, các nơi trao đổi hàng hóa, các nhà máy sản xuất đều muốn biết khối lượng hàng hóa, sản phẩm hay nguyên liệu một cách nhanh chóng và chính xác, và kể cả cho các lĩnh vực khác như bến cảng, trạm cân xe giao thông, ... đều được sử dụng cân điện tử.
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ GTVT KHOA CÔNG NGHỆ THÔNG TIN
Nguyễn Đức Thành
THIẾT KẾ CÂN ĐIỆN TỬ VÀ HIỂN THỊ TRÊN
MÁY TÍNH
ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: CNKT Điện tử Viễn thông
Cán bộ hướng dẫn: ThS Nguyễn Thu Hiền
Trang 2TÓM TẮTTóm tắt: Cân trọng lượng là một nhu cầu cần thiết và không thể thiếu
trong đời sống xã hội, từ người nông dân đến các khu chế xuất, các nhàmáy, xí nghiệp, Xuất phát từ nhu cầu thực tế và ứng dụng công nghệ viđiều khiển các nhà khoa học đã nghiên cứu ra các loại cân điện tử hiển thị
số có thể cân được trọng lượng từ mg đến hàng trăm tấn mà các loại cân
cơ học bình thường không thể thực hiện được Trên thực tế các siêu thị,các nơi trao đổi hàng hóa, các nhà máy sản xuất đều muốn biết khối lượnghàng hóa, sản phẩm hay nguyên liệu một cách nhanh chóng và chính xác,
và kể cả cho các lĩnh vực khác như khoáng sản, bến cảng, trạm cân xegiao thông, đều được sử dụng cân điện tử
Từ khóa: Load cell, HX711, Arduino.
Hà Nội, ngày tháng năm 2018
Xác nhận của GVHD
Trang 3LỜI CAM ĐOAN
Em xin cam đoan đồ án tốt nghiệp với đề tài “Thiết kế cân điện
tử và hiển thị trên máy tính” là công trình nghiên cứu của riêng em,không sao chép của người khác Các số liệu, kết quả trong bài đồ án
là trung thực và chưa được công bố ở các công trình khác Nếu khôngđúng như đã nêu trên, em xin hoàn toàn chịu trách nhiệm về đề tàinày
Hà Nội, ngày tháng năm 2018
Người cam đoan
Trang 4MỤC LỤC
Danh mục hình ảnh
Danh mục bảng biểu
MỞ ĐẦU 1
Chương 1 Tổng quan về Cân điện tử 2
1.1 Tìm hiểu các loại cân điện tử thường dùng 2
1.2 Lựa chọn phương án thi công 8
Chương 2 Giới thiệu linh kiện sử dụng 9
2.1 Cảm biến Loadcell 9
2.1.1 Loadcell 9
2.1.2 Giới thiệu Loadcell sử dụng trong mạch 15
2.1.3 Thành phần cấu tạo cơ bản của cân điện tử 16
2.1.4 Module HX711 17
2.2 LCD 18
2.2.1 Thông số kĩ thuật của LCD 19
2.2.2 Bộ nhớ của LCD 21
2.2.3 Các chân điều khiển LCD 23
2.3 Các linh kiện khác 24
Arduino Uno R3 24
2.3.1 Một số loại Arduino hiện nay 25
2.3.2 Arduino Uno R3 29
2.3.3 Atmega328 33
2.3.4 Lập trình cho Arduino Uno 37
2.4 Giao tiếp với máy tính 45
Chương 3 Thiết kế và thi công 47
3.1 Sơ đồ khối 47
3.2 Sơ đồ nguyên lý 47
3.3 Nguyên lý hoạt động 49
Trang 5Kết luận và hướng phát triển đề tài 52
PHỤ LỤC 53
Chương trình chính 53
Lập trình cho giao diện 56
TÀI LIỆU THAM KHẢO 59
Trang 6Danh mục hình ảnh.
Hình 1.1 Cân bàn điện tử 2
Hình 1.2 Cân sàn điện tử 3
Hình 1.3 Cân phân tích điện tử 3
Hình 1.4 Cân đếm vật liệu 4
Hình 1.5 Cân vàng điện tử 5
Hình 1.6 Cân khối lượng và tính thành tiền 6
Hình 1.7 Cân dùng để đo khối lượng oto 7
Hình 1.8 Sơ đồ khối cơ bản của cân điện tử 8
Hình 2.1 Loadcell kiểu điện trở 9
Hình 2.2 Strain gauge 10
Hình 2.3 Điện trở tỉ lệ với lực tác động 11
Hình 2.4 Các strain gauge được bố trí trên loadcell 11
Hình 2.5 Strain gauge biến dạng theo thân loadcell 12
Hình 2.6 Loadcell và strain gauge 12
Hình 2.7 Cầu điện trở Wheatstone 13
Hình 2.8 Loadcell cân bằng 14
Hình 2.9 Loadcell thay đổi 14
Hình 2.10 Loadcell dạng kéo chữ S 14
Hình 2.11 Loadcell dạng uốn 14
Hình 2.12 Loadcell dạng nén bề mặt thấp 15
Hình 2.13 Loadcell dạng nén hình thanh 15
Hình 2.14 Module HX711 17
Hình 2.15 Sơ đồ chân Module HX711 18
Hình 2.16 Sơ đồ chân Wheatstone (loadcell) 18
Hình 2.17 LCD 1604 19
Hình 2.18 LCD 12864 19
Hình 2.19 LCD 2004 19
Trang 7Hình 2.20 LCD 1602 19
Hình 2.21 Màn hình LCD 1602 xanh lá 19
Hình 2.22 Sơ đồ chân LCD 1602 20
Hình 2.23 Vùng nhớ DDRAM 21
Hình 2.24 Vùng nhớ CGROM 22
Hình 2.25 Hoạt động chân RS 23
Hình 2.26 Arduino Due 25
Hình 2.27 Arduino Mega 2560 R3 25
Hình 2.28 Arduino UNO R3 26
Hinh 2.29 Arduino Leonardo 26
Hình 2.30 Arduino Uno R3 SMD 27
Hình 2.31 Arduino Nano 27
Hình 2.32 Arduino Pro Micro 28
Hình 2.33 Arduino Pro Mini 28
Hình 2.34 Board USB-UART 28
Hình 2.35 Sơ đồ cấu trúc board Arduino Uno 30
Hình 2.36 Sơ đồ chân của Arduino Uno 31
Hình 2.37 Các chân Analog và Digital trên board 32
Hình 2.38 Một số linh kiện sử dụng cho board Arduino Uno 33
Hình 2.39 Atmega328 34
Hình 2.40 Sơ đồ chân Atmega328 34
Hình 2.41 Chức năng các bit trong thanh ghi SREG 36
Hình 2.42 Giao diện Arduino IDE 37
Hình 2.43 Một số ký hiệu và chức năng trong Arduino IDE 38
Hình 2.44 Vùng thông báo trong Arduino IDE 38
Hình 2.45 Menu File trong Arduino IDE 39
Hình 2.46 Kết nối Arduino Uno R3 với máy tính 41
Hình 2.47 Arduino Uno R3 được kết nối với COM3 42
Hình 2.48 Chọn board Arduino Uno trong IDE 42
Trang 8Hình 2.49 Chọn cổng COM cho Arduino IDE 43
Hình 2.50 Xác nhận cổng COM 43
Hình 2.51 Cửa sổ thiết kế các dòng lệnh 44
Hình 2.52 Nạp chương trình xuống Arduino Uno R3 44
Hình 2.53 Visual Studio 45
Hình 2.54 Ví dụ 1 về Visual Basic 45
Hình 2.55 Ví dụ 2 về Visual Basic 46
Hình 3.1 Sơ đồ khối tổng quát 47
Hình 3.2 Sơ đồ nguyên lý mạch 47
Hình 3.3 Mô phỏng mạch 49
Hình 3.4 Chỉnh sửa giao diện 50
Hình 3.5 Hoàn thành giao diện 50
Hình 3.6 Hoàn thành thi công mạch 51
Trang 9Danh mục bảng biểu.
Bảng 1.1 Thông số cơ bản của cân bàn điện tử 2
Bảng 1.2 Thông số cơ bản của cân sàn điện tử 3
Bảng 1.3 Thông số cơ bản của cân phân tích điện tử 4
Bảng 1.4 Thông số cơ bản của cân đếm vật liệu 4
Bảng 1.5 Thông số cơ bản của cân vàng điện tử 5
Bảng 1.6 Thông số cơ bản của cân khối lượng tính tiền 6
Bảng 1.7 Thông số cơ bản của cân khối lượng oto 7
Bảng 2.1 Thông số kỹ thuật Loadcell 5Kg 15
Bảng 2.2 Thông số kỹ thuật của module HX711 17
Bảng 2.3 Thông số kỹ thuật của LCD 1602 19
Bảng 2.4 Chức năng chân của LCD 20
Bảng 2.5 Thông số kỹ thuật board Arduino Uno 29
Bảng 2.6 Thông số chính của Atmega328 34
Bảng 2.7 Một số câu lệnh, cấu trúc thường gặp 40
Bảng 2.8 Bảng so sánh với cân thực tế 51
Trang 10MỞ ĐẦU
Ngày nay, với sự phát triển của công nghệ vi điện tử, kỹ thuật
số các hệ thống điều khiển dần được tự động hóa Với những kỹthuật tiên tiến của vi xử lý, vi mạch số được ứng dụng vào lĩnh vựcđiều khiển, thì các hệ thống điều khiển cơ khí thô sơ, với tốc độ xử líchậm chạp ít chính xác được thay thế bằng hệ thống điều khiển tựđộng với các lệnh chương trình đã được thiết lập trước
Cân điện tử hiện nay là một trong những nhu cầu cần thiếttrong xã hội Do có tốc độ đo khối lượng nhanh và chính xác, cânđược những khối lượng nhỏ từ vài gam cho đến hàng tấn Từ những
ưu điểm đó mà cân điện tử được ứng dụng rất phổ biến trong nhiềuloại ngành nghề như: xây dựng – đo vật liệu, vận tải – kiểm tra trọnglượng xe, khoáng sản – đong đếm khoáng sản thu được, hay trongnhững siêu thị, nhà hàng thì dùng loại cân nhỏ để kiểm tra nguyênvật liệu đầu vào đầu ra, …
Trang 11CHƯƠNG 1: TỔNG QUAN VỀ CÂN ĐIỆN TỬ 1.1 Tìm hiểu các loại cân điện tử thường dùng.
Cân bàn điện tử: So với cân bàn cơ, nhỏ gọn hơn và tính chínhxác cao Thường được thiết kế từ nhiều chất liệu như nhôm, thépchống gỉ có tuổi thọ cao, sử dụng cho cả mục đích thương mại và ápdụng trong sản xuất hàng hóa với khối lượng vừa phải Cân bàn cókích thước đa dạng và mức cân khác nhau để phục vụ cân đượcnhiều sản phẩm Cân bàn điện tử ngày nay đa phần là sử dụngnguồn năng lượng lấy từ pin, dễ dàng sử dụng, màn hình LCD hiểnthị kết quả dễ đọc, bộ xử lý cho ra kết quả nhanh sau vài giây Cânbàn trọng tải lớn hay được sử dụng trong các ngành công nghiệpnặng, các hãng hàng không, ngành cơ khí, hãng chuyển phát nhanh
Kết nối Cổng truy xuất RS-232C
Nguồn điện Sử dụng pin sạc DC 9V hoặc nguồn điện AC 110/220V
Trang 12Kết nối Cổng truy xuất RS-232C, có thể kết nối máy tính, máy in, …
Nguồn điện Pin sạc DC 6V/ 3.2Ah hoặc nguồn điện AC 230V
Trang 13Hình 1.3 Cân phân tích điện tửBảng 1.3 Thông số cơ bản của cân phân tích điện tử
Cân đếm: Là loại cân điện tử chuyên đếm số lượng hàng hóa,sản phẩm Sản phẩm cân đếm điện tử ra đời hỗ trợ đếm được chínhxác tiết kiệm thời gian đếm thủ công và độ chính xác cao Quá trìnhđếm chỉ mất vài phút
Hình 1.4 Cân đếm vật liệu
Bảng 1.4 Thông số cơ bản của cân đếm vật liệu
Trang 14Cân vàng điện tử: Là loại cân điện tử sử dụng trong ngành sảnxuất và mua bán vàng, trang sức, kim loại quý Cân có độ sai số cực
kỳ nhỏ, giúp cân chính xác trọng lượng của sản phẩm
Hình 1.5 Cân vàng điện tử
Bảng 1.5 Thông số cơ bản của cân vàng điện tửMức cân 120 g, 200g, 300g, 400g, …Kích thước 128x128 mm, 172x172 mm, …
Trang 15Nguồn điện AC adapter 9V hoặc pin 4AA
Một số tính năng
Thay đổi đơn vị cânĐếm số lượng
Tự động về không
Cân tính tiền: Là loại cân điện tử dùng trong các siêu thị, cửahàng với chức năng chính là cân trọng lượng đồ dùng, thực phẩm vàtính giá thành
Hình 1.6 Cân khối lượng và tính thành tiền
Bảng 1.6 Thông số cơ bản của cân khối lượng tính tiền
Mức cân 3kg, 5kg, 10 kg, 15 kg, …Kích thước 410x483x585 mm, 375x397x128 mm, …
Trang 16Kết nối Cổng truy xuất RS-232A
Một số tính năng Tính tiền và in ra phiếuTự động về không
Cân ô tô, xe tải : Là loại cân điện tử chuyên dụng cho việc cântải trọng của các phương tiện, tính ra được trọng lượng hàng hóatrên xe, có thể cân được trọng lượng lớn 100 - 800 tấn Cân thườngđược dùng trong các công ty chuyên sản xuất và vận chuyển hànghóa Cân còn được dùng tại các trạm kiểm soát giao thông
Hình 1.7 Cân dùng để đo khối lượng oto
Bảng 1.7 Thông số cơ bản của cân khối lượng oto
Trang 17Quá tải an toàn 120%-140% trọng tải cân
Kết nối Chuẩn giao tiếp RS-485 hoặc RS-232
Một số tính năng Chống nước, chống rỉ sét
1.2 Lựa chọn phương án thi công.
Mạch cân điện tử cần ba khối chức năng cơ bản là:
- Khối cảm biến lực tác động để đo khối lượng vật cần đo lường
- Khối xử lý có nhiệm vụ tính toán, xử lý dữ liệu để đưa đến khốihiển thị (Khối xử lí do nhà sản xuất hoặc người sử dụng thiếtkế)
- Khối hiển thị có chức năng hiển thị các thông số đo
Hình 1.8 Sơ đồ khối cơ bản của cân điện tử
Do đó có một số phương án thi công dùng những linh kiện phùhợp với các khối chức năng trong cân điện tử như sau:
Trang 18Arduino là một board mạch được tích hợp sẵn vi xử lý chínhcùng các linh kiện điện tử cần thiết giúp mạch có nhiều tính năng vàchạy ổn định Hiện nay board Arduino Uno được nhiều người sử dụng
và ứng dụng trong rất nhiều mạch điện tử
LCD, cụ thể là LCD 16x2 rất hay được dùng trong các mạchđiện tử vì LCD có thể hiển thị được cả chữ và số theo yêu cầu ngườingười sử dụng
Do vậy, trong mạch cân điện tử ở báo cáo tốt nghiệp lần này,
em sử dụng các linh kiện dùng trong mạch cân điện tử là cảm biếnloadcell, module HX711, Arduino Uno R3, LCD, nút bấm
Trang 19CHƯƠNG 2: GIỚI THIỆU LINH KIỆN SỬ DỤNG 2.1 Cảm biến Load cell.
2.1.1 Loadcell.
Cảm biến lực dùng trong việc đo khối lượng được sử dụng phổbiến là loadcell, là một kiểu cảm biến lực biến dạng Lực chưa biếttác động vào một bộ phận đàn hồi, lượng di động của bộ phận đànhồi biến đổi thành tín hiệu điện tỷ lệ với lực chưa biết
Loadcell là một cảm biến hay đầu dò có thể chuyển đổi một tảitrọng hay lực tác dụng vào nó thành một tín hiệu điện Tín hiệu điệnnày có thể là một sự thay đổi điện áp, dòng điện hay tần số tùythuộc vào loại loadcell và mạch đo được sử dụng
Có nhiều loại loadcell khác nhau:
Loadcell kiểu điện trở làm việc dựa vào nguyên lý áp lực - trởkháng Khi một tải trọng, lực, lực căng tác động lên cảm biến, trởkháng của nó sẽ thay đổi Sự thay đổi trở kháng này sẽ đẫn đến sựthay đổi điện áp đầu ra khi một điện áp đầu vào được cấp
Loadcell kiểu điện dung làm việc dựa trên sự thay đổi của dungkháng Đối với tụ điện phẳng có hai bản cực phẳng song song, điệndung sẽ tỉ lệ thuận với tiết diện bản cực và hằng số điện môi củachất điện môi nằm giữa hai bản cực và tỉ lệ nghịch với khoảng cáchgiữa hai bản cực
Trong thực tế, phổ biến nhất là các loadcell có sẵn dựa trênnguyên tắc thay đổi điện trở để đáp ứng với một tải áp dụng Do đó,trong bài viết này sẽ nói về loadcell sử dụng điện trở (strain gauge)
Hình 2.1 Loadcell kiểu điện trở
Trang 20“Strain gauge” là một điện trở đặc biệt chỉ nhỏ bằng móng tay,được nuôi bằng một nguồn điện ổn định, được dán cố định trên
“Load” Strain gage có cấu trúc có thể biến dạng đàn hồi khi chịu tácđộng của lực, tạo ra một tín hiệu điện tỷ lệ với sự biến dạng này
Strain gauge là thành phần cấu tạo chính của loadcell, bao gồmmột sợi dây kim loại mảnh đặt trên một tấm cách điện đàn hồi
Để tăng chiều dài của dây điện trở strain gauge, người ta đặttheo hình ziczac, mục đích là để tăng độ biến dạng khi bị lực tácdụng qua đó và tăng độ chính xác của thiết bị cảm biến sử dụngstrain gauge
Hình 2.2 Strain gauge
Ta có công thức:
R= ρ L
S
Trong đó: R là điện trở strain gauge (Ω))
L là chiều dài của sợi kim loại strain gauge (m)
S là tiết diện của sợi kim loại strain gauge (m2)
ρ là điện trở suất vật liệu của sợi kim loại straingauge
Từ đó, ta rút ra tính chất:
- Khi dây kim loại (S) bị lực tác động sẽ thay đổi điện trở (R)
- Khi dây bị lực nén, chiều dài strain gauge giảm, điện trở sẽgiảm xuống
Trang 21- Khi dây bi kéo dãn, chiều dài strain gauge tăng, điện trở sẽtăng lên.
- Điện trở thay đổi tỷ lệ với lực tác động
Hình 2.3: Điện trở tỉ lệ với lực tác động
Một loadcell thường bao gồm các strain gauges được dán vào
bề mặt của thân loadcell Thân loadcell là một khối kim loại đàn hồi
và tùy theo từng loại loadcell và mục đích sử dụng loadcell màthân loadcell được thiết kế có hình dạng đặc biệt khác nhau và chếtạo bằng các vật liệu kim loại khác nhau (nhôm hợp kim, thép không
gỉ, thép hợp kim)
Trang 22Hình 2.4: Các strain gauge được bố trí trên loadcell
Các bộ phận tạo nên một loadcell được hiển thị như hình trên
Ở đây có 4 strain gauges được gắn vào các mặt trên và dưới củaload cell
Hình 2.5: Strain gauge biến dạng theo thân loadcell
Khi có tải trọng hoặc lực tác động lên thân loadcell làm chothân loadcell bị biến dạng (giãn hoặc nén) Làm cho hai trong số
4 điện trở strain gauges là nén, trong khi hai strain gauges cònlại đang bị căng ra Điều đó dẫn tới sự thay đổi chiều dài (L) và tiếtdiện (S) của các sợi kim loại của điện trở strain gauges dán trên thânloadcell dẫn đến một sự thay đổi giá trị của các điện trở straingauges (R)
Trang 23Hình 2.6: Loadcell và strain gaugeMỗi loadcell (cảm biến tải) có một đầu ra độc lập, thường từ 1-3mV/V Đầu ra kết hợp được tổng hợp dựa trên kết quả của đầu ratừng cảm biến tải - load cell Các thiết bị đo lường hoặc bộ hiển thịkhuyếch đại tín hiệu điện đưa về, qua chuyển đổi ADC, vi xử lý vớiphần mềm tích hợp sẵn thực hiện tính toán và đưa kết quả đọc đượclên màn hình Đa phần các thiết bị hay bộ hiển thị hiện đại đều chophép giao tiếp với các thiết bị ngoài khác như máy tính hoặc máy in.
Loadcell dựa trên nguyên lý cầu điện trở cân bằng(Wheatstone) gọi là cảm biến tải cầu điện trở để chuyển đổi sự thayđổi tỉ lệ giữa lực căng và điện trở thành điện áp tỷ lệ với tải Sự thayđổi điện áp này là rất nhỏ, do đó nó chỉ có thể được đo và chuyểnthành số sau khi đi qua bộ khuếch đại của các bộ chỉ thị cân điện tử(đầu cân)
Cấu tạo chính của loadcell gồm các điện trở strain gauges R1,R2, R3, R4 kết nối thành 1 cầu điện trở Wheatstone như hình dưới vàđược dán vào bề mặt của thân loadcell như hình 2.4 và 2.5
Trang 24Hình 2.7: Cầu điện trở Wheatstone.
Một điện áp kích thích được cung cấp cho ngõ vào loadcell (góc(1) và (4)) và điện áp tín hiệu ra được đo giữa hai ngõ khác (góc (2)
và (3))
Tại trạng thái cân bằng (trạng thái không tải), điện áp tín hiệu
ra là số 0 hoặc 0 khi bốn điện trở được gắn phù hợp về giá trị Khi
có tải trọng hoặc lực tác động lên thân loadcell làm cho thân loadcell
bị biến dạng (giãn hoặc nén), điều đó dẫn tới sự thay đổi chiều dài vàtiết diện của các sợi kim loại của điện trở strain gauges dán trênthân loadcell dẫn đến một sự thay đổi giá trị của các điện trở straingauges Sự thay đổi này dẫn tới sự thay đổi trong điện áp đầu ra Sựthay đổi điện áp đầu ra thường rất bé (khoảng 20mV khi đầy tải), để
có thể đo được và số hóa để tính toán thì cần phải khuếch đại tínhiện mV này lên 0- 5V hay 0- 10V
Hình 2.8: Loadcell cân bằng
Trang 25Hình 2.9: Loadcell thay đổi.
Giá trị lực tác dụng tỉ lệ với sự thay đổi điện trở cảm ứng trongcầu điện trở, do đó trả về tín hiệu điện áp tỉ lệ Ưu điểm chính củacông nghệ này là xuất phát từ yêu cầu thực tế, với những tham sốxác định trước, sẽ có các sản phẩm thiết kế phù hợp cho từng ứngdụng của người dùng Ở đó các phần tử cảm ứng có kích thước vàhình dạng khác nhau phù hợp với yêu cầu của ứng dụng Các dạngcảm biến phổ biến: cảm biến tải dạng kéo (shear), cảm biến tải dạnguốn (bending), cảm biến tải dạng nén (compression) và cảm biến tảidạng xoắn (tension), …
Hình 2.10: Loadcell dạng kéo
Trang 26mặt thấp hình thanh
Có nhiều loại loadcell do các hãng sản xuất khác nhau nhưKUBOTA (Nhật), Global Weighing (Hàn Quốc), TransducerTechniques Inc, Tedea – Huntleigh Mỗi loại loadcell được chế tạocho một yêu cầu riêng biệt theo tải trọng chịu đựng, chịu lực kéo haynén
Các loadcell thường được làm từ các kim loại như nhôm, sắt vàthép không gỉ Nếu không bị quá tải trọng cho phép và được thườngxuyên bảo trì tốt, loadcell có thể sử dụng được trong rất nhiều năm
2.1.2 Giới thiệu Loadcell sử dụng trong mạch.
Bảng 2.1:Thông số kĩ thuật Loadcell 5Kg
Ảnh hưởng nhiệt độ tới độ nhạy 0.003 %RO/oC
Ảnh hưởng nhiệt độ tới điểm
Trang 27Chất liệu cảm biến Nhôm (Al)
2.1.3 Thành phần cấu tạo cơ bản của cân điện tử.
Thành phần cấu tạo cơ bản của cân điện tử bao gồm hai bộphận chính: Bộ phận thứ nhất là đòn cân và bộ phận thứ hai là mạch
xử lý tín hiệu điện tử Ở phần này chỉ phân tích cấu tạo của đòn cân
mà không đi sâu vào phần mạch điện tử
Đòn cân tên tiếng anh là “Strain Gauge Loadcell” hay gọi tắt là
“Loadcell” cảm biến tải Như tên gọi phản ánh, đòn cân được cấu tạobởi hai thành phần, thành phần thứ nhất là “Strain Gauge” và thànhphần còn lại là “Load” Strain Gauge là một điện trở đặc biệt chỉ nhỏbằng móng tay, có điện trở thay đổi khi bị nén hay kéo dãn và đượcnuôi bằng một nguồn điện ổn định, chỉ nhỏ bằng móng tay, được dánchết lên Load, nghĩa là một thanh kim loại chịu tải
Thanh kim loại này một đầu được gắn cố định, đầu còn lại tự do
và gắn với mặt bàn cân (Đĩa cân) Khi ta bỏ một khối lượng lên đĩa ,thanh kim loại này sẽ bị uốn cong do trọng lượng của khối lượng cângây ra Khi thanh kim loại bị uốn, điện trở Strain Gauge sẽ bị kéo dãn
ra và thay đổi điện trở
Như vậy, khi đặt vật cân lên bàn cân, tùy theo khối lượng vật
mà Load, thanh kim loại sẽ bị uốn đi một lượng tương ứng và lượngnày được đo lường qua sự thay đổi điện trở của Strain Gauge Thôngthường, thanh kim loại sẽ được cấu tạo sao cho bất chấp vị trí ta đặtvật cân lên bàn/ đĩa, nó đều cho cùng một mức độ bị uốn như nhau
Khoảng uốn cong của thanh kim loại vào khoảng 1/500 cm Tuygiá trị uốn cong rất nhỏ nhưng đủ để Strain Gauge phát hiện và đolường khối lượng trong khoảng nhất định tùy theo loại cân điện tử.Thông thường Strain Gauge chỉ phát hiện và đo lường trên mộtkhoảng nhỏ, hẹp, cân điện tử nào đo khối lượng càng lớn và càngchính xác đòi hỏi khoảng Strain Gauge phát hiện càng rộng và độnhạy càng lớn
2.1.4 Module ADC HX711
Trang 28Hình 2.14: Module HX711Module HX711 là module chuyển đổi tín hiệu tương tự (Analog)sang tín hiệu số (Digital): ADC - Analog Digital Convert HX711 đượcthiết kế để chuyển đối tín hiệu và ứng dụng điều khiển công nghiệp
để giao tiếp trực tiếp với một cảm biến cầu
Độ phân giải 24bit và giao tiếp hai dây (chân) với vi điều khiển
là chân SCK (Clock) và chân DT (Data), tương ứng với chân số 5 vàchân số 3 ở hình 2.15 Sơ đồ chân Module HX711
Bảng 2.2 Thông số kỹ thuật của module HX711Điện áp hoạt động 2.7V – 5V
Dòng điện tiêu thụ <1.5mADòng điện ngắt hoạt
Tốc độ lấy mẫu 10-80 SPS (tùy chỉnh)
Độ phân giải điện áp 40mVDải nhiệt độ -40oC đến +85oC
Do output của loadcell có điện áp rất nhỏ, cỡ khoảng: 1-3mV Vìvậy cần những bộ ADC có độ phân giải cao để có thể đọc được mứcđiện áp mV trên Ví dụ: ta sử dụng các bộ ADC 8bit, độ phân giảiAnalog = 5V/256 = 19.53mV lớn hơn 1-3mV của output loadcell nênkết quả đọc sẽ toàn là 0
Trang 29Cách kết nối loadcell với module HX711:
A-Black – E- White – A+
Hình 2.15 Sơ đồ
chân Module HX711 Hình 2.16 Sơ đồ chân Wheatstone(loadcell)
Module HX711 đọc tín hiệu analog của loadcell qua kênh gồm 4dây: VCC (E+), GND (E-), INA+ và INA- rồi chyển đổi sang tín hiệudigital và truyền sang vi điều khiển khi có xung CK
Dùng ADC HX711 24 bit, điện áp 5V
Ta có: 5000mV - ứng với - 224-1 (24bit)
Nên : 5000 g - ứng với - 224-1 (24bit)
x g - ứng với - giá trị ADC đo được
Do đó: x = ADC*5000/224-1 (gam)
2.2 LCD - Liquid Crystal Display.
LCD được sử dụng nhiều trong các ứng dụng của vi điềukhiển Nó có khả năng hiển thị kí tự đa dạng, trực quan (chữ, số và kí
tự đồ họa), dễ dàng đưa vào mạch ứng dụng theo nhiều giao thứcgiao tiếp khác nhau, tốn rất ít tài nguyên hệ thống và giá thành rẻ.LCD loại nhỏ hay còn gọi là TEXT LCD (để phân biệt với graphic LCD -hiển thị hình ảnh)
Trang 30Hình 2.17 LCD 1604 Hình 2.18 LCD 12864
Hình 2.19 LCD 2004 Hình 2.20 LCD 1602
2.2.1 Thông số kĩ thuật của LCD:
Hình 2.22 LCD 1602 xanh láBảng 2.3 Thông số kĩ thuật của LCD 1602
Hoạt động ổn định 2.7-5.5VĐiện áp ra mức cao > 2.4VĐiện áp ra mức thấp <0.4VDòng điện cấp
Trang 31Bảng 2.4: Chức năng chân của LCD.
Chức năng thứ tựSố Tên thái logicTrạng Mô tả
LCD 5 RW 01 Ghi (AVR=>LCD)Đọc(LCD=>AVR)
Từ 1=>0
Vô hiệu hóa LCDLCD hoạt độngBắt đầu ghi/đọc
Trang 32dữ liệu được nối trực tiếp với vi điều khiển Tùy chế độ hoạt động 4bit hay 8 bit mà các chân từ D0-D3 có thể được nối với vi điền khiểnhoặc bỏ qua.
ô nhớ tương ứng với 1 ô trên màn hình LCD LCD loại 16x2 có thểhiển thị 32 ký tự (32 ô hiển thị) , vì thế một số ô nhớ của DDRAMkhông được sử dụng làm các ô hiển thị
Hình 2.23 Vùng nhớ DDRAM
Trang 33Chỉ có 16 ô nhớ có địa chỉ từ 0-15 và 16 ô địa chỉ từ 64-79 làđược hiển thị trên LCD Vì thế muốn hiển thị một ký tự nào đó trênLCD chúng ta cần viết ký tự đó vào DDRAM ở 1 trong 32 địa chỉ trên.Các ký tự nằm ngoài 32 ô nhớ sẽ không được hiển thị, tuy nhiên vẫn
bị mất đi, chúng có thể được dùng cho các mục đích khác nhau nếucần thiết
CGROM là vùng bộ nhớ cố định chứa định nghĩa font cho các ký
tự Chúng ta không trực tiếp truy xuất vùng nhớ này mà LCD sẽ tựthực hiện khi có yêu cần đọc font để hiển thị Một điều đáng lưu ý làđịa chỉ font của mỗi ký tự chính là mã ASCII của ký tự đó
Trang 34Hình 2.24 Vùng nhớ CGROM
CGROM và DDRAM được tự động phối hợp trong quá trình hiển
thị LCD Giả sử chúng ta muốn hiển thị ký tự ‘a’ tại vị trí đầu tiêndòng 2 của LCD thì các bước thực hiện như sau: vị trí đầu tiên củadòng thứ 2 có địa chỉ là 64 trong bộ nhớ DDRAM, vì thế chúng ta sẽghi vào ô nhớ có địa chỉ 64 này 1 giá trị là 97 (mã ASCII của ký tự
‘a’) sau đó LCD đọc giá trị 97 này coi như là địa chỉ của vùng nhớCGROM và đọc giá trị font được định sẵn , sau đó xuất bản font này
ra các chấm trên màn hình LCD tại vị trí đầu tiên của dòng 2 trên
Trang 35LCD Đó là cách bộ nhớ CGROM và DDRAM phối hợp để hiển thị 1 ký
tự lên màn hình Như vậy công việc của người lập trình LCD tươngđối đơn giản, đó là viết mã ASCII vào bộ nhớ DDRAM tại đúng vị tríđược yêu cầu, bước tiếp theo sẽ do LCD đảm nhiệm
CGRAM là vùng chứa các symbol do người dùng tự định nghĩa,mỗi symbol có kích thước 5x8 và được dành cho 8 ô nhớ 8 bit Cácsymbol thường được định nghĩa trước và được gọi khi cần thiết, vùngnày có tất cả 64 ô nhớ nên tối đa có 8 symbol có thể được định nghĩa
2.2.3 Các chân điều khiển LCD.
Các chân điều khiển đọc và ghi của LCD bao gồm RS, R/W vàEN:
Chúng ta đều biết thanh ghi IR là thanh ghi chứa mã lệnh choLCD, vì thế nếu muốn gửi 1 mã lệnh đến LCD thì chân RS phải đượcreset về 0 Ngược lại, khi muốn ghi mã ASCII của ký tự cần hiển thịlên LCD thì chúng ta sẽ set RS=1 để chọn thanh ghi DR Hoạt độngcủa chân RS được mô tả như trong hình
Trang 36R/W (chân số 4): Chân lựa chọn giữa việc đọc và ghi NếuR/W=0 thì dữ liệu sẽ được ghi từ bộ điều khiển ngoài (vi điều khiểnAVR chẳng hạn) vào LCD Nếu R/W=1 thì dữ liệu sẽ được đọc từ LCD
ra ngoài
Tuy nhiên, chỉ có duy nhất 1 trường hợp mà dữ liệu có thể đọc
từ LCD ra, đó là đọc trạng thái LCD để biết LCD có đang bận haykhông (cờ Busy Flag - BF) Do LCD là một thiết bị hoạt động tươngđối chậm (so với vi điều khiển), vì thế một cờ BF được dùng để báoLCD đang bận, nếu BF=1 thì chúng ta phải chờ cho LCD xử lí xongnhiệm vụ hiện tại, đến khi nào BF=0 một thao tác mới sẽ được gáncho LCD Vì thế, khi làm việc với Text LCD chúng ta nhất thiết phải
có một chương trình con tạm gọi là wait_LCD để chờ cho đến khi LCDrảnh
Có 2 cách để viết chương trình wait_LCD:
- Cách 1 là đọc bit BF về kiểm tra và chờ BF=0, cách này đòi hỏilệnh đọc từ LCD về bộ điều khiển ngoài, do đó chân R/W cầnđược nối với bộ điều khiển ngoài
- Cách 2 là viết một hàm delay một khoảng thời gian cố định nào
sẽ gây ra lỗi hiển thị
EN (chân số 5): Chân cho phép LCD hoạt động (Enable), chânnày cần được kết nối với bộ điều khiển để cho phép thao tác LCD
Để đọc và ghi data từ LCD cần tạo một “xung cạnh xuống” trênchân EN, nói theo cách khác, muốn ghi dữ liệu vào LCD trước hết cầnđảm bảo rằng chân EN=0, tiếp đến xuất dữ liệu đến các chân D0-D7,sau đó set chân EN lên 1 và cuối cùng là xóa EN về 0 để tạo 1 xungcạnh xuống
2.3 Các linh kiện khác.
Arduino Uno R3.
Arduino là một board mạch vi xử lý, nhằm xây dựng các ứngdụng tương tác với nhau hoặc với môi trường được thuận lợi hơn
Trang 37Phần cứng bao gồm một board mạch nguồn mở được thiết kế trênnền tảng vi xử lý AVR Atmel 8bit, hoặc ARM Atmel 32bit NhữngModel hiện tại được trang bị gồm 1 cổng giao tiếp USB, 6 chân đầuvào analog, 14 chân I/O kỹ thuật số tương thích với nhiều board mởrộng khác nhau.
Được giới thiệu vào năm 2005, Những nhà thiết kế của Arduino
cố gắng mang đến một phương thức dễ dàng, không tốn kém chonhững người yêu thích, sinh viên và giới chuyên nghiệp để tạo ranhững thiết bị có khả năng tương tác với môi trường thông qua cáccảm biến và các cơ cấu chấp hành Những ví dụ phổ biến cho nhữngngười yêu thích mới bắt đầu bao gồm các robot đơn giản, điều khiểnnhiệt độ và phát hiện chuyển động Đi cùng với nó là một môi trườngphát triển tích hợp (IDE) chạy trên các máy tính cá nhân thôngthường và cho phép người dùng viết các chương trình cho Aduinobằng ngôn ngữ C hoặc C++
2.3.1 Một số loại Arduino hiện nay.
Arduino Due
Arduino Due sử dụng vi điều khiển dựa trên chip SAM3X8E ARM– M3 của Atmel với lõi ARM 32 bit Arduino Due có tổng cộng 54 chânI/O, 12 chân Analog, 4 UART, chạy với xung clock 84MHz, 2 DAC, 2TWI, header SPI, header JTAG
Không giống như các board Arduino khác, board chỉ chạy ở mức3.3V Điện áp cấp vào các chân I/O có thể chịu được ở mức 3.3V nếucao hơn có thể cháy và phá hủy board, làm hỏng board
Hình 2.26 Arduino Due
Arduino Mega 2560 R3
Arduino Mega 2560 R3 sử dụng Vi điều khiển ATmega2560 cho