Khóa luận: Nghiên cứu và thiết kế hệ thống đo mực chất lỏng trong bình chứa

Khám phá cách thiết kế hệ thống đo mực chất lỏng dùng Arduino từ A-Z. Tìm hiểu chi tiết về linh kiện, lập trình và ứng dụng thực tế.

Người đăng

Ẩn danh

Thể loại

khóa luận
58
1
0

Phí lưu trữ

30 Point

Tóm tắt

I. Tổng quan hệ thống đo mực chất lỏng và vai trò trong CN

Trong bối cảnh khoa học kỹ thuật phát triển không ngừng, tự động hóa đã trở thành yếu tố cốt lõi trong mọi lĩnh vực, từ dân dụng đến công nghiệp. Một trong những ứng dụng quan trọng nhất là việc thiết kế hệ thống đo mực chất lỏng trong bình chứa. Các ngành công nghiệp sản xuất như hóa chất, thực phẩm, nước giải khát, hay quản lý đo mực xăng dầu đều yêu cầu độ chính xác cao trong việc kiểm soát mức chất lỏng. Một hệ thống đo mức tự động không chỉ giúp tối ưu hóa quy trình sản xuất, đảm bảo sản phẩm đạt chất lượng đồng đều mà còn giúp tăng tuổi thọ thiết bị, giảm thiểu rủi ro tràn hoặc cạn bồn chứa. Việc giám sát liên tục và chính xác giúp loại bỏ sự can thiệp thủ công của người vận hành, từ đó nâng cao hiệu quả và an toàn lao động. Nghiên cứu này tập trung vào việc phát triển một giải pháp đo mức bồn công nghiệp hiệu quả, sử dụng các công nghệ hiện đại như vi điều khiển đo mực nước và các loại cảm biến đo mực chất lỏng tiên tiến. Mục tiêu chính là xây dựng một mô hình có khả năng hoạt động ổn định, đáng tin cậy và có thể ứng dụng rộng rãi. Hệ thống này được kỳ vọng sẽ giải quyết các bài toán thực tế, từ quy mô gia đình, nông nghiệp cho đến các nhà máy sản xuất quy mô lớn, góp phần vào sự phát triển chung của ngành tự động hóa tại Việt Nam.

1.1. Tầm quan trọng của việc đo mức chất lỏng chính xác

Việc đo mực chất lỏng trong bồn chứa với độ chính xác cao là yêu cầu sống còn trong nhiều ngành sản xuất. Quá trình sản xuất các sản phẩm như sữa, nước đóng chai, hay hóa chất đòi hỏi việc kiểm soát mức nguyên liệu phải tuyệt đối chính xác để đảm bảo chất lượng đầu ra. Sai lệch trong đo lường có thể dẫn đến gián đoạn sản xuất, lãng phí nguyên vật liệu và hư hỏng thiết bị. Một hệ thống giám sát mực nước hiệu quả giúp ngăn chặn các sự cố như cạn hoặc tràn bồn, những vấn đề có thể gây thiệt hại kinh tế lớn và mất an toàn. Hơn nữa, việc tự động hóa quá trình này giúp giải phóng sức lao động, cho phép người vận hành tập trung vào các nhiệm vụ giám sát và quản lý tổng thể thay vì phải kiểm tra thủ công liên tục. Đây chính là nền tảng để xây dựng các nhà máy thông minh và hiệu quả.

1.2. Giới thiệu mô hình nghiên cứu sử dụng vi điều khiển

Để đáp ứng các yêu cầu trên, đề tài tập trung vào việc “Nghiên cứu, Thiết kế hệ thống đo mực chất lỏng trong bình chứa” dựa trên nền tảng vi điều khiển đo mực nước. Sự ra đời của vi điều khiển, đặc biệt là các bo mạch như Arduino đo mực nước, đã tạo ra một cuộc cách mạng trong lĩnh vực tự động hóa. Ưu điểm của chúng là khả năng chống nhiễu tốt, lập trình đơn giản, và dễ dàng tích hợp vào các hệ thống nhúng. Mô hình nghiên cứu này sử dụng bo mạch Arduino Uno R3 làm bộ xử lý trung tâm, kết hợp với các thiết bị đo mực nước chuyên dụng để tạo thành một hệ thống hoàn chỉnh, có khả năng đo lường và cảnh báo tự động.

II. Thách thức khi thiết kế hệ thống giám sát mực nước tự động

Việc thiết kế hệ thống đo mực chất lỏng chính xác đối mặt với nhiều thách thức về kỹ thuật và môi trường. Một trong những khó khăn lớn nhất là lựa chọn loại cảm biến đo mực chất lỏng phù hợp với từng loại chất lỏng và điều kiện vận hành cụ thể. Mỗi loại chất lỏng có đặc tính vật lý, hóa học khác nhau (độ nhớt, tính ăn mòn, khả năng tạo bọt) đòi hỏi các phương pháp đo lường riêng biệt. Ví dụ, phương pháp đo tiếp xúc có thể không phù hợp với hóa chất ăn mòn, trong khi phương pháp đo mực chất lỏng không tiếp xúc lại có thể bị ảnh hưởng bởi hơi nước hoặc áp suất trong bồn. Một thách thức khác là xử lý nhiễu và đảm bảo tính ổn định của mạch đo mực nước. Trong môi trường công nghiệp, nhiễu điện từ từ các động cơ, máy bơm có thể ảnh hưởng đến tín hiệu của cảm biến, dẫn đến sai số đo lường. Ngoài ra, các yếu tố như sự thay đổi nhiệt độ, áp suất, hay sự gợn sóng trên bề mặt chất lỏng cũng là những vấn đề cần được giải quyết triệt để trong quá trình thiết kế và hiệu chuẩn cảm biến mức để hệ thống hoạt động ổn định và tin cậy.

2.1. Các sai số trong quá trình đo mực chất lỏng liên tục

Khi thực hiện đo mực chất lỏng liên tục, hệ thống có thể gặp phải nhiều nguồn gây sai số. Hiện tượng gợn sóng trên bề mặt chất lỏng do quá trình bơm hoặc khuấy trộn là một trong những nguyên nhân hàng đầu. Sóng làm cho khoảng cách từ cảm biến đến bề mặt liên tục thay đổi, khiến kết quả đo không ổn định. Theo tài liệu nghiên cứu, để khắc phục, mạch đo cần có thuật toán kiểm tra nhiều lần và lấy giá trị trung bình để đưa ra kết quả chính xác hơn. Ngoài ra, sự thay đổi về nhiệt độ và áp suất trong bồn chứa cũng có thể ảnh hưởng đến tốc độ truyền của sóng (đối với cảm biến siêu âm, radar), từ đó gây ra sai số. Việc hiệu chuẩn cảm biến mức trong điều kiện thực tế là bước bắt buộc để giảm thiểu các sai số này.

2.2. Vấn đề lựa chọn thiết bị đo mực nước phù hợp

Lựa chọn thiết bị đo mực nước là một quyết định quan trọng, ảnh hưởng trực tiếp đến hiệu quả của toàn hệ thống. Thị trường hiện có nhiều loại cảm biến khác nhau như cảm biến siêu âm đo mực nước, cảm biến điện dung, cảm biến đo mức bằng áp suất, cảm biến radar đo mức, hay đo mức bằng phao từ. Mỗi loại có ưu và nhược điểm riêng. Ví dụ, cảm biến siêu âm có giá thành hợp lý và dễ lắp đặt nhưng có thể bị ảnh hưởng bởi bọt và hơi nước. Cảm biến radar có độ chính xác cao và hoạt động tốt trong môi trường khắc nghiệt nhưng chi phí cao hơn. Việc lựa chọn phải dựa trên phân tích kỹ lưỡng về loại chất lỏng, hình dạng bồn chứa, yêu cầu về độ chính xác và ngân sách dự án.

III. Phương pháp đo mực chất lỏng không tiếp xúc bằng siêu âm

Phương pháp đo mực chất lỏng không tiếp xúc sử dụng cảm biến siêu âm đo mực nước là một giải pháp phổ biến và hiệu quả, được lựa chọn làm trọng tâm trong nghiên cứu này. Nguyên lý cơ bản của phương pháp này là đo thời gian từ lúc cảm biến phát ra một xung siêu âm cho đến khi nhận lại được sóng phản xạ từ bề mặt chất lỏng. Dựa vào tốc độ âm thanh trong không khí và thời gian đo được, vi điều khiển có thể tính toán chính xác khoảng cách, từ đó suy ra mực chất lỏng còn lại trong bồn. Ưu điểm lớn của cảm biến siêu âm là không tiếp xúc trực tiếp với chất lỏng, do đó tránh được các vấn đề về ăn mòn, bám bẩn, và có thể ứng dụng cho nhiều loại chất lỏng khác nhau. Nghiên cứu sử dụng cảm biến SRF04, một loại cảm biến nhỏ gọn, dễ sử dụng, có phạm vi đo từ 2cm đến 400cm với độ chính xác cao. Việc tích hợp cảm biến này với bo mạch Arduino đo mực nước tạo ra một hệ thống đo mức tự động linh hoạt, chi phí thấp và dễ dàng triển khai trong cả ứng dụng dân dụng và công nghiệp.

3.1. Nguyên lý hoạt động của cảm biến siêu âm SRF04

Cảm biến siêu âm SRF04 hoạt động dựa trên nguyên tắc phát và thu sóng siêu âm. Để bắt đầu đo, vi điều khiển sẽ gửi một xung tín hiệu mức cao (HIGH) trong khoảng 10 micro giây (µs) đến chân Trig (phát). Ngay sau đó, module cảm biến sẽ tự động phát ra một chùm 8 xung siêu âm ở tần số 40kHz và kéo chân Echo (thu) lên mức cao. Chân Echo sẽ duy trì ở mức cao cho đến khi nhận được sóng siêu âm phản xạ trở lại, lúc này nó sẽ được kéo về mức thấp. Thời gian mà chân Echo ở mức cao chính là thời gian sóng di chuyển cả đi và về. Dựa vào công thức: Khoảng cách = (Thời gian x Tốc độ âm thanh) / 2, mạch đo mực nước sẽ tính toán được khoảng cách chính xác từ cảm biến đến bề mặt chất lỏng.

3.2. So sánh cảm biến siêu âm với các loại cảm biến khác

So với các công nghệ khác, cảm biến siêu âm có nhiều lợi thế. Cảm biến điện dung hoạt động tốt với nhiều loại chất lỏng nhưng que đo phải tiếp xúc trực tiếp, dễ bị ảnh hưởng bởi sự bám dính của vật liệu. Cảm biến đo mức bằng áp suất (cảm biến thủy tĩnh) đo mức dựa vào cột áp suất, có độ chính xác cao nhưng chỉ phù hợp với các bồn hở và chất lỏng có tỷ trọng không đổi. Cảm biến radar đo mức là công nghệ tiên tiến nhất, không bị ảnh hưởng bởi nhiệt độ, áp suất, bụi hay hơi nước, nhưng chi phí đầu tư rất cao. Do đó, với các ứng dụng không yêu cầu điều kiện quá khắc nghiệt, cảm biến siêu âm đo mực nước vẫn là giải pháp đo mức bồn công nghiệp cân bằng tốt nhất giữa hiệu suất và chi phí.

IV. Hướng dẫn thiết kế mạch đo mực nước với Arduino Uno R3

Việc thiết kế hệ thống đo mực chất lỏng dựa trên nền tảng Arduino Uno R3 là một quá trình bao gồm cả thiết kế phần cứng và xây dựng phần mềm. Về phần cứng, hệ thống bao gồm các khối chính: khối nguồn, khối vi điều khiển trung tâm (Arduino Uno R3), khối cảm biến (SRF04), khối hiển thị (màn hình LCD 16x2 và module I2C), và khối cảnh báo (báo mức chất lỏng bằng loa và đèn LED). Sơ đồ nguyên lý mạch kết nối các thành phần này với nhau một cách logic, đảm bảo tín hiệu được truyền và xử lý chính xác. Màn hình LCD được sử dụng để hiển thị thông tin về mực chất lỏng, trong khi các nút nhấn cho phép người dùng cài đặt chiều cao của bồn chứa. Về phần mềm, chương trình được viết trên Arduino IDE bằng ngôn ngữ C/C++. Thuật toán chương trình thực hiện các nhiệm vụ: khởi tạo các thiết bị, đọc dữ liệu từ cảm biến siêu âm, tính toán khoảng cách và mực chất lỏng, hiển thị kết quả lên màn hình LCD và kích hoạt hệ thống cảnh báo khi mực chất lỏng xuống dưới ngưỡng cho phép. Đây là một mạch đo mực nước hoàn chỉnh và dễ dàng tùy biến.

4.1. Sơ đồ khối và nguyên lý của hệ thống đo mức tự động

Một hệ thống đo mức tự động hoàn chỉnh bao gồm các khối chức năng được liên kết chặt chẽ. Khối nguồn cung cấp điện áp ổn định 5VDC cho toàn bộ mạch. Khối trung tâm là vi điều khiển đo mực nước Arduino Uno R3, có nhiệm vụ nhận tín hiệu từ cảm biến, xử lý dữ liệu và điều khiển các thiết bị ngoại vi. Khối cảm biến siêu âm SRF04 thực hiện đo khoảng cách đến bề mặt chất lỏng. Dữ liệu sau khi xử lý được gửi đến khối hiển thị, sử dụng màn hình LCD 16x2 giao tiếp qua module I2C để tiết kiệm chân vi điều khiển. Cuối cùng, khối cảnh báo (loa và LED) sẽ được kích hoạt khi mực chất lỏng đạt đến các ngưỡng cài đặt trước, giúp người dùng giám sát hệ thống một cách hiệu quả.

4.2. Lập trình vi điều khiển và hiển thị thông tin lên LCD

Phần mềm điều khiển được phát triển trên môi trường Arduino IDE. Lưu đồ thuật toán bắt đầu bằng việc khởi tạo các thư viện cần thiết cho màn hình LCD và cảm biến. Trong hàm setup(), các chân I/O được cấu hình, và các giá trị ban đầu được thiết lập. Trong vòng lặp chính loop(), chương trình liên tục phát xung và đọc tín hiệu từ cảm biến siêu âm. Dữ liệu thời gian duration được chuyển đổi thành khoảng cách distance. Sau đó, chương trình tính toán mực chất lỏng thực tế dựa trên chiều cao bồn chứa đã được lưu trong EEPROM. Cuối cùng, các thông số này được định dạng và hiển thị trực quan trên màn hình LCD, đồng thời so sánh với ngưỡng cảnh báo để kích hoạt loa hoặc LED khi cần thiết.

V. Kết quả thực nghiệm hệ thống đo mực chất lỏng trong bồn

Sau quá trình thiết kế và thi công, hệ thống đo mực chất lỏng trong bình chứa đã được lắp đặt và thử nghiệm thực tế. Mô hình hoàn chỉnh bao gồm một hộp điều khiển chứa bo mạch Arduino, màn hình LCD, các nút nhấn và một hộp bảo vệ riêng cho cảm biến siêu âm được thiết kế bằng phần mềm Inventor và in 3D. Quá trình thử nghiệm cho thấy hệ thống hoạt động ổn định. Người dùng có thể dễ dàng thiết lập chiều cao của bồn chứa thông qua các nút nhấn. Màn hình LCD hiển thị rõ ràng và chính xác khoảng cách từ cảm biến đến mặt nước cũng như phần trăm chất lỏng còn lại. Khi mực nước giảm xuống dưới ngưỡng cài đặt, hệ thống báo mức chất lỏng bằng cả âm thanh (loa kêu) và hình ảnh (đèn LED nhấp nháy) hoạt động chính xác. Kết quả thực nghiệm khẳng định mô hình thiết bị đo mực nước này đáp ứng được các mục tiêu đề ra: đo lường chính xác, hoạt động ổn định và giao diện thân thiện với người dùng. Đây là một tiền đề quan trọng để triển khai giải pháp này vào thực tế.

5.1. Quy trình lắp đặt và hiệu chuẩn cảm biến mức thực tế

Quy trình lắp đặt bao gồm việc kết nối các linh kiện điện tử với board Arduino theo sơ đồ mạch in đã thiết kế. Cảm biến siêu âm được đặt trong vỏ bảo vệ và gắn cố định phía trên miệng bồn chứa, hướng vuông góc với bề mặt chất lỏng. Bước quan trọng nhất là hiệu chuẩn cảm biến mức. Quá trình này được thực hiện bằng cách đo thủ công mực nước thực tế ở nhiều điểm khác nhau và so sánh với giá trị đọc được từ cảm biến. Từ đó, điều chỉnh các tham số trong code (như tốc độ âm thanh, hoặc bù trừ sai số hệ thống) để đảm bảo kết quả đo của hệ thống trùng khớp với thực tế. Việc hiệu chuẩn kỹ lưỡng giúp tăng độ tin cậy cho toàn bộ hệ thống giám sát mực nước.

5.2. Đánh giá độ chính xác và hạn chế của mô hình

Kết quả thử nghiệm cho thấy mạch đo mực nước có độ chính xác cao trong điều kiện mặt nước tĩnh. Tuy nhiên, mô hình vẫn còn một số hạn chế. Như đã đề cập trong nghiên cứu, khi có dòng chảy mạnh vào bồn, bề mặt nước tạo ra gợn sóng, gây ra sự dao động trong kết quả đo. Để cải thiện, cần áp dụng các thuật toán lọc số (ví dụ: bộ lọc trung bình trượt) để làm mịn dữ liệu. Hạn chế khác là cảm biến siêu âm có thể bị ảnh hưởng bởi nhiệt độ môi trường. Một hướng nâng cấp là tích hợp thêm cảm biến nhiệt độ để bù trừ sai số, giúp hệ thống đo mức tự động hoạt động chính xác hơn trong các điều kiện môi trường thay đổi.

VI. Tương lai và hướng phát triển hệ thống đo mức công nghiệp

Đề tài “Nghiên cứu, thiết kế hệ thống đo mực chất lỏng trong bình chứa” đã xây dựng thành công một mô hình thí nghiệm hoạt động hiệu quả. Tuy nhiên, để đưa giải pháp này vào ứng dụng thực tiễn trong sản xuất công nghiệp quy mô lớn, cần có những hướng phát triển và nâng cấp sâu hơn. Hướng phát triển trước mắt là hoàn thiện thuật toán xử lý tín hiệu để loại bỏ nhiễu từ các yếu tố môi trường như sóng, bọt khí, và sự thay đổi nhiệt độ. Về lâu dài, hệ thống có thể được mở rộng bằng cách thay thế vi điều khiển Arduino bằng các bộ điều khiển logic khả trình (PLC) để tăng tính ổn định và độ tin cậy trong môi trường công nghiệp khắc nghiệt. Việc sử dụng PLC giám sát mức bồn cho phép tích hợp dễ dàng vào các hệ thống SCADA (Supervisory Control and Data Acquisition) lớn hơn. Hơn nữa, việc tích hợp công nghệ IoT (Internet of Things) sẽ cho phép giám sát mực chất lỏng từ xa thông qua internet, gửi cảnh báo đến điện thoại thông minh, và thu thập dữ liệu để phân tích, tối ưu hóa quy trình vận hành.

6.1. Khắc phục hạn chế và nâng cấp giải pháp đo mức bồn

Để nâng cấp giải pháp đo mức bồn công nghiệp, cần tập trung vào việc khắc phục các hạn chế của mô hình hiện tại. Thay vì chỉ sử dụng cảm biến siêu âm, có thể kết hợp nhiều loại cảm biến (ví dụ: siêu âm và áp suất) để tạo ra một hệ thống đo lường dự phòng, tăng độ tin cậy. Đối với các bồn chứa hóa chất hoặc chất lỏng dễ bay hơi, việc lựa chọn các loại cảm biến chuyên dụng như cảm biến radar đo mức là cần thiết. Đồng thời, cần nâng cấp hệ thống bơm và xả để phù hợp với các bồn chứa dung tích lớn và tần suất hoạt động liên tục, đảm bảo tính đồng bộ và hiệu quả của toàn bộ hệ thống đo mức tự động.

6.2. Ứng dụng PLC giám sát mức bồn và tích hợp IoT

Tương lai của hệ thống giám sát mực nước nằm ở khả năng tích hợp và kết nối. Việc sử dụng PLC giám sát mức bồn thay cho Arduino sẽ mang lại độ bền và khả năng mở rộng vượt trội, phù hợp với tiêu chuẩn công nghiệp. Thêm vào đó, tích hợp các module truyền thông không dây (Wi-Fi, LoRaWAN) sẽ biến hệ thống thành một thiết bị IoT. Điều này cho phép người quản lý có thể theo dõi tình trạng của hàng loạt bồn chứa từ một trung tâm điều khiển duy nhất, nhận dữ liệu thời gian thực, phân tích xu hướng sử dụng và đưa ra các quyết định vận hành thông minh, góp phần xây dựng một nhà máy sản xuất hiện đại và hiệu quả.

Tóm tắt và mô tả trên trang này được tạo với sự hỗ trợ của AI. Nếu bạn thấy nội dung không chính xác hoặc có vấn đề, vui lòng Báo lỗi nội dung.

04/10/2025
Nghiên cứu thiết kế hệ thống đo mực chất lỏng trong bình chứa

Trích đoạn nội dung tài liệu

Chương 1 : GIỚI THIỆU CÁC THIẾT BỊ 1. Mạch Arduino Uno R3 1.Giới thiệu về Arduino Để đáp ứng yêu cầu của đề tài, bộ điều khiển trung tâm được lựa chọn là bo mạch Arduino Uno R3. Arduino là một bo mạch vi xử lý được dùng để lập trình tương tác với các thiết bị phần cứng như cảm biến, động cơ, đèn hoặc các thiết bị khác. Đặc điểm nổi bật của Arduino là môi trường phát triển ứng dụng cực kỳ dễ sử dụng, với một ngôn ngữ lập trình có thể học một cách nhanh chóng ngay cả với người ít am hiểu về điện tử và lập trình.

Và điều làm nên hiện tượng Arduino chính là mức giá rất thấp và tính chất nguồn mở từ phần cứng tới phần mềm. Arduino Uno R3 sử dụng chip dán Atmega328, có 14 chân digital I/O, 6 chân đầu vào (input) analog và thạch anh dao động 16MHz  Arduino UNO có 14 chân digital dùng để đọc hoặc xuất tín hiệu. Chức năng đặc biệt 1 số chân digital : - Chân Serial: 0 (RX) và 1 (TX): dùng để gửi (transmit – TX) và nhận (receive – RX) dữ liệu TTL Serial. Bốn chân này dùng để truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác.

- LED 13 : chân này được người dùng sử dụng cho LED.  Arduino UNO có 6 chân analog (A0 → A5) cung cấp độ phân giải tín hiệu 10bit , để đọc giá trị điện áp trong khoảng 0V → 5V. Đặc biệt có 2 chân A4 (SDA) và A5 (SCL) hỗ trợ giao tiếp I2C/TWI với các thiết bị khác. 1Sơ đồ chân Arduino Uno 1.Thông số kĩ thuật Bảng 1.1 Thông số kĩ thuật mạch Arduino Vi điều khiển ATmega328 họ 8bit Điện áp hoạt động 5V DC (chỉ được cấp qua cổng USB) Tần số hoạt động 16 MHz Dòng tiêu thụ khoảng 30mA Điện áp vào khuyên dùng 7-12V DC Điện áp vào giới hạn 6-20V DC Số chân Digital I/O 14 (6 chân hardware PWM) Số chân Analog 6 (độ phân giải 10bit) Dòng tối đa trên mỗi chân I/O 30 mA Dòng ra tối đa (5V) 500 mA Dòng ra tối đa (3.3V) 50 mA 32 KB (ATmega328) với 0.5KB dùng Bộ nhớ flash bởi bootloader 3 1.

Vi xử ử lí AVR Atmega328 a) Giới thiệu chung vềề vi điều khiển Atmega328 là mộtt chíp vi điều đi khiển được sản xuất bờii hãng Atmel thuộc họ MegaAVR. Atmega 328 là một m bộ vi điều khiển 8 bít dựaa trên ki kiến trúc RISC bộ nhớ chương trình ình 32KB ISP flash có thể th ghi xóa hàng nghìn llần, 1KB EEPROM, một bộ nhớ RAM vô cùng lớn l trong thế giới vi xử lý 8 bít (2KB SRAM) Với 23 chân có thể sửử dụng cho các kết nối vào hoặcc ra i/O, 32 thanh ghi, 3 b bộ timer/counter có thểể lập trình, có các gắt nội và ngoại (2 lệệnh trên một vector ngắt), giao thức truyềền thông nối tiếp p USART, SPI, I2C. Ngoài ra có th thể sử dụng bộ biến đổi số tương tựt 10 bít (ADC/DAC) mở rộng tớii 8 kênh, kh khả năng lập trình đượcc watchdog timer, hoạt ho động với 5 chế độ nguồn, n, có th thể sử dụng tới 6 kênh điều chế độ rộng ng xung (PWM), hỗ h trợ bootloader. 2Sơ đồ chân vi điều khiển n ATmega328 b) Thông số chính Atmega328: - Là loại vi điều u khiển khi 8 bit có hiệu suấtt cao (high performance) và công suất tiêu thụ thấp.

th - Cấu trúc lệnh nh đơn giản, gi thời gian thực thi lệnh ngắn:  131 lệnh nh thực th thi trong vòng 1 chu kì chip.  32 x 8 thanh ghi công dụng d chung.  Đầy đủ các xử x lý tĩnh. 4  Hỗ trợ 20 MIPS khi hoạt động ở tần số 20 MHz.

 Tích hợp bộ nhân 2 thực hiện trong 2 chu kì chip. - Bộ nhớ chương trình và dữ liệu không bay hơi (nonvolatile):  32KB trong hệ thống flash khả trình có thể nạp và xóa 10.  Tùy chọn khởi động phần mã với các bit nhìn độc lập trong hệ thống bằng cách vào chương trình khởi động chip.  1Kbyte EEPROM có thể ghi và xóa 100.

 2KB RAM nhớ tĩnh trong (Internal SRAM).  Lập trình khóa cho phần mềm bảo mật.  Dữ liệu được lưu trữ 20 năm (ở 85oC) và 100 năm (ở 20oC). - Tính năng ngoại vi:  2 bộ định thời/bộ đếm ( timers/counters ) 8 bit với các chế độ đếm rẽ và kiểu so sánh.

 1 bộ định thời/bộ đếm ( timer/counter ) 16 bit với các chế độ riêng rẽ, kiểu so sánh và kiểu bắt sự kiện.  Bộ đếm thời gian thực với máy giao động riêng rẽ.  6 kênh băm xung PWM.  8 kênh ADC 10 bit.

 Byte định hướng 2 đường giao tiếp nối tiếp.  Giao tiếp USART nối tiếp khả trình.  Giao tiếp SPI nối tiếp chủ/tớ (Master/Slave).  Bộ định thời khả trình giám sát xung nhịp của chip 1 cách riêng rẽ.

 Tích hợp bộ so sánh tín hiệu tương tự. - Giao tiếp JTAG: phân tích, gỡ rối và kiểm tra hệ thống. - Các tính năng đặc biệt của vi điều khiển:  Chế độ bật nguồn reset và phát hiện Brown-out khả trình.  Tích hợp mạch dao động RC bên trong.

 Các ngắt trong và ngoài.  6 chế độ nghỉ: rảnh rỗi, giảm nhiễu ADC, tiết kiệm năng lượng thấp (Standby và Extended Standby). 5 Vào/ra và các gói dữ liệu:  23 chân vào ra khả trình.  28-pin PDIP and 44-lead TQFP.

- Điện áp sử dụng:  1.5V dùng với tốc độ xung nhịp 0 – 4MHz  2.5V dùng với tốc độ xung nhịp 0 – 10MHz  4.5V dùng với tốc độ xung nhịp 0 – 20MHz - Tiêu thụ điện ở 1MHz, 1.8V, 25oC  Chế độ hoạt động: 0.2mA  Chế độ tắt nguồn: 0.1μA Chế độ tiết kiệm điện: 0. c) Mô tả các chân của Atemga328p: Atmega328p gồm có 28 chân: - VCC: Cấp nguồn nuôi cho vi điều khiển - GND: Chân này được nối xuống mass - Port B (PB[7:0]): XTAL1/XTAL2/TOSC1/TOSC2: Cổng B là cổng I / O hai chiều 8-bit với điện trở kéo trong (được chọn cho mỗi bit). Ngoài ra có thể được nối tới bộ dao động thạch anh bên ngoài bằng 2 chân XTAL1 và XTAL2 - Port C (PC[5:0]): Cổng C là cổng I / O hai chiều 7-bit với điện trở kéo trong (được chọn cho mỗi bit). - PC6/RESET: Nếu cầu chì RSTDISBL được lập trình, PC6 được sử dụng như một chân I / O.

Lưu ý rằng các đặc tính điện của PC6 khác với các chân của Cổng C. Nếu cầu chì RSTDISBL không lập trình, PC6 được sử dụng làm đầu vào Reset để đưa chíp quay trở lại trạng thái khi mới khởi động. - AVCC: Là chân điện áp cùng cấp cho bộ chuyển đổi A/D, Nó phải được kết nối bên ngoài với VCC, ngay cả khi chức năng ADC không được sử dụng. 6 Nếu ADC được sử dụng, nó nên được kết nối với VCC thông qua một bộ lọc thấp.

- AREF: Là chân điện áp so sánh cho bộ chuyển đổi ADC. - ADC[7:6] (TQFP and VFQFN Package Only): ADC [7: 6] dùng làm đầu vào analog cho bộ chuyển đổi A / D. Những chân này được cung cấp từ nguồn cung cấp analog và phục vụ như các kênh ADC 10-bit.4 USB Arduino sử dụng cáp USB để giao tiếp với máy tính. Thông qua cáp USB chúng ta có thể Upload chương trình cho Arduino hoạt động, ngoài ra USB còn là nguồn cho Arduino.

Bộ nguồn Khi không sử dụng USB làm nguồn thì chúng ta có thể sử dụng nguồn ngoài thông qua jack cắm 2.1mm (cực dương ở giữa) hoặc có thể sử dụng 2 chân Vin và GND để cấp nguồn cho Arduino. Bo mạch hoạt động với nguồn ngoài ở điện áp từ 5 – 20 volt. Chúng ta có thể cấp một áp lớn hơn tuy nhiên chân 5V sẽ có mực điện áp lớn hơn 5 volt. Và nếu sử dụng nguồn lớn hơn 12 volt thì sẽ có hiện tượng nóng và làm hỏng bo mạch.

Chân 5V và chân 3.3V (Output voltage) : các chân này dùng để lấy nguồn ra từ nguồn mà chúng ta đã cung cấp cho Arduino. Cảm biến siêu âm SRF04 1.Tổng quan Cảm biến siêu âm là loại cảm biến đo dùng sự phản xạ của sóng siêu âm để đo khoảng cách, vị trí đối tượng, mức nước. Đây là loại cảm biến dùng cho nhiều hệ thống như điều khiển quá trình, các hệ thống ứng dụng trong giao thông, robot. Các hệ thống đo lường dùng cảm biến.

Ứng dụng khá rộng rãi trong đời sống. Cảm biến siêu âm SRF04có 1 số ưu điểm như: - Nhỏ gọn, dễ sử dụng - Khoảng cách đo từ 2 -> 400cm với độ chính xác cao. - Giá thành hợp lý - Được sử dụng rộng rãi tại thị trường Việt Nam. Thông Số kĩ thuật  Cảm biến SRF04 có 4 chân là : Nguồn 5VDC(VCC) , Chân Output (Trig), Chân input (Echo) , Chân đất (GND) 1.

Nguyên lý hoạt động Phát/Th Đối u Tượng d Hình 1. 3Nguyên lý hoạt động của cảm biến siêu âm Để đo khoảng cách, cần phát 1 xung rất ngắn từ chân Trig. Sau đó, cảm biến sẽ tạo ra 1 xung HIGH ở chân Echo cho đến khi nhận lại được sóng phản xạ lại. Chiều rộng của xung sẽ bằng với thời gian sóng siêu âm được phát từ cảm biển và quay trở lại.

Sóng Siêu âm, sóng rađio, hoặc các nguồn năng lượng quang học thường được sử dụng , vì vậy các thông số liên quan đến việc tính toán khoảng cách là tốc độ của âm thanh trong không khí và thời gian phản xạ. 4Hình ảnh cảm biến siêu âm 1. Màn hình hiển thị LCD16x2 1. Màn hình LCD Text LCD là loại màn hình tinh thể lỏng dùng để hiện thị các dòng chữ hoặc số trong bảng mã ASCII.

Không giống các loại LCD lớn, Text LCD được chia sẵn thành từng ô và ứng với mỗi ô chỉ có thể hiển thị một ký tự ASCII. Cũng vì lý do 8 chỉ hiển thị đượcc ký tự t ASCIInên loại LCD này được gọii là Text LCD (đ (để phân biệt vớii Graphic LCD có thế th hiển thị hình ảnh). Mỗi ô củaa Text LCD bao ggồm các “chấm” tinh thể lỏng, ng, việc vi kết hợp “ẩn” và “hiện” các chấm m này ssẽ tạo thành một ký tự cần hiển thị. 5Màn hình LCD 16x2 Trong các Text LCD, các mẫu m ký tựđược định nghĩa sẵn.

Kích thư thước của Text LCDđược định nh nghĩa ngh bằng số ký tự có thể hiển thị trên 1 dòng và ttổng số dòng mà LCD có. Ví dụ d LCD 16x2 là loại có 2 dòng và mỗii dòng có th thể hiển thị tối đa 16 ký tự.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ