- Các thành phần bắt buộc
- Giá trị pH là gì?
- Cảm biến pH tương tự trọng lực hoạt động như thế nào?
- Sơ đồ mạch máy đo pH Arduino
- Lập trình Arduino cho máy đo pH
- Hiệu chuẩn điện cực pH
- Thử nghiệm Máy đo pH Arduino
Thang đo pH được sử dụng để đo độ axit và tính bazơ của chất lỏng. Nó có thể có các số đọc từ 1-14 trong đó 1 hiển thị chất lỏng có tính axit nhất và 14 cho thấy chất lỏng cơ bản nhất. 7 pH dành cho các chất trung tính không có tính axit và không có tính bazơ. Hiện nay, pH đóng một vai trò rất quan trọng trong cuộc sống của chúng ta và nó được sử dụng trong nhiều ứng dụng khác nhau. Ví dụ, nó có thể được sử dụng trong bể bơi để kiểm tra chất lượng nước. Tương tự, đo pH được sử dụng trong nhiều ứng dụng như nông nghiệp, xử lý nước thải, công nghiệp, giám sát môi trường, v.v.
Trong dự án này, chúng tôi sẽ chế tạo Máy đo pH Arduino và tìm hiểu cách đo độ pH của dung dịch lỏng bằng cách sử dụng cảm biến pH trọng lực và Arduino. Màn hình LCD 16x2 được sử dụng để hiển thị giá trị pH trên màn hình. Chúng ta cũng sẽ học cách hiệu chỉnh cảm biến pH để xác định độ chính xác của cảm biến. Vậy hãy bắt đầu!
Các thành phần bắt buộc
- Arduino Uno
- 16 * 2 LCD chữ và số
- Mô-đun I2C cho LCD
- Cảm biến pH tương tự trọng lực
- Kết nối dây
- Breadboard
Giá trị pH là gì?
Đơn vị mà chúng ta sử dụng để đo độ axit của một chất được gọi là pH . Thuật ngữ “H” được định nghĩa là log âm của nồng độ ion hydro. Phạm vi pH có thể có giá trị từ 0 đến 14. Giá trị pH bằng 7 là trung tính, vì nước tinh khiết có giá trị pH chính xác bằng 7. Giá trị thấp hơn 7 có tính axit và giá trị lớn hơn 7 là bazơ hoặc kiềm.
Cảm biến pH tương tự trọng lực hoạt động như thế nào?
Cảm biến pH tương tự được thiết kế để đo giá trị pH của dung dịch và hiển thị độ axit hoặc kiềm của chất đó. Nó thường được sử dụng trong các ứng dụng khác nhau như nông nghiệp, xử lý nước thải, công nghiệp, giám sát môi trường, v.v. Mô-đun có chip điều chỉnh điện áp trên bo mạch hỗ trợ nguồn điện áp rộng 3.3-5.5V DC, tương thích với 5V và 3.3V của bất kỳ bảng điều khiển nào như Arduino. Tín hiệu đầu ra đang được lọc bởi độ rung thấp của phần cứng.
Đặc tính kỹ thuật:
Mô-đun chuyển đổi tín hiệu:
- Điện áp cung cấp: 3,3 ~ 5,5V
- Đầu nối đầu dò BNC
- Độ chính xác cao: ±0.1@25osystemC
- Phạm vi phát hiện: 0 ~ 14
Điện cực PH:
- Phạm vi nhiệt độ hoạt động: 5 ~ 60 ° C
- Điểm không (Trung tính): 7 ± 0,5
- Hiệu chỉnh dễ dàng
- Kháng nội bộ: <250MΩ
Bảng chuyển đổi tín hiệu pH:
Mô tả Pin:
Đầu vào V +: 5V DC
G: chân nối đất
Po: đầu ra tương tự pH
Do: đầu ra 3.3V DC
Tới: Nhiệt độ đầu ra
Cấu tạo điện cực pH:
Cấu tạo của cảm biến pH được trình bày ở trên. Các pH Sensor trông giống như một que thường được làm bằng một loại vật liệu thủy tinh có một mẹo gọi là “Glass màng”. Màng này chứa đầy dung dịch đệm có pH đã biết (thường là pH = 7). Thiết kế điện cực này đảm bảo một môi trường với sự liên kết liên tục của các ion H + ở bên trong màng thủy tinh. Khi nhúng đầu dò vào dung dịch cần thử nghiệm, các ion hydro trong dung dịch thử nghiệm bắt đầu trao đổi với các ion tích điện dương khác trên màng thủy tinh, tạo ra một thế điện hóa trên màng được đưa đến mô-đun khuếch đại điện tử để đo điện thế giữa cả hai điện cực và chuyển đổi nó thành đơn vị pH. Sự khác biệt giữa các điện thế này xác định giá trị pH dựa trên phương trình Nernst.
Phương trình Nernst:
Phương trình Nernst đưa ra mối quan hệ giữa điện thế tế bào của một tế bào điện hóa, nhiệt độ, thương số phản ứng và điện thế tế bào tiêu chuẩn. Trong các điều kiện phi tiêu chuẩn, phương trình Nernst được sử dụng để tính điện thế tế bào trong pin điện hóa. Phương trình Nernst cũng có thể được sử dụng để tính tổng sức điện động (EMF) cho một pin điện hóa đầy đủ. Phương trình này cũng được sử dụng để tính toán giá trị PH của dung dịch. Phản ứng điện cực thủy tinh được điều chỉnh bởi Phương trình Nernst có thể được đưa ra như sau:
E = E0 - 2.3 (RT / nF) ln Q Trong đó Q = Hệ số phản ứng E = mV phát ra từ điện cực E0 = Độ lệch 0 đối với điện cực R = Hằng số khí lý tưởng = 8.314 J / mol-K T = Nhiệt độ tính bằng ºK F = Hằng số Faraday = 95.484,56 C / mol N = Điện tích ion
Sơ đồ mạch máy đo pH Arduino
Sơ đồ mạch cho dự án máy đo pH Arduino này được đưa ra dưới đây:
Kết nối Bảng chuyển đổi tín hiệu pH với Arduino:
Kết nối giữa Arduino và bảng chuyển đổi tín hiệu PH được hiển thị trong bảng dưới đây.
Arduino |
Bảng cảm biến PH |
5V |
V + |
GND |
G |
A0 |
Po |
Lập trình Arduino cho máy đo pH
Sau khi kết nối phần cứng thành công, giờ là lúc lập trình Arduino. Mã hoàn chỉnh cho máy đo pH này với Arduino được cung cấp ở phần dưới cùng của hướng dẫn này. Giải thích từng bước của dự án được đưa ra dưới đây.
Điều đầu tiên cần làm trong chương trình là bao gồm tất cả các thư viện cần thiết. Ở đây trong trường hợp của tôi, tôi đã bao gồm thư viện “LiquidCrystal_I2C.h” để sử dụng giao diện I2C của màn hình LCD và “ Wire.h ” để sử dụng chức năng I2C trên Arduino.
#include
Tiếp theo, giá trị hiệu chuẩn được xác định, có thể được sửa đổi theo yêu cầu để có được giá trị pH chính xác của dung dịch. (Điều này sẽ được giải thích ở phần sau của bài viết)
giá_trị hiệu_phần float = 21,34;
Bên trong setup (), các lệnh LCD được viết để hiển thị thông báo chào mừng trên LCD.
lcd.init (); lcd.begin (16, 2); LCD đèn nền(); lcd.setCursor (0, 0); lcd.print ("Chào mừng đến với"); lcd.setCursor (0, 1); lcd.print ("Thông báo Mạch"); chậm trễ (2000); lcd.clear ();
Trong vòng lặp (), đọc 10 giá trị tương tự mẫu và lưu trữ chúng trong một mảng. Điều này được yêu cầu để làm trơn giá trị đầu ra.
for (int i = 0; i <10; i ++) {buffer_arr = analogRead (A0); chậm trễ (30); }
Sau đó, sắp xếp các giá trị Analog nhận được theo thứ tự tăng dần. Điều này là bắt buộc vì chúng ta cần tính toán trung bình chạy của các mẫu trong giai đoạn sau.
for (int i = 0; i <9; i ++) {for (int j = i + 1; j <10; j ++) {if (buffer_arr> buffer_arr) {temp = buffer_arr; buffer_arr = đệm_arr; buffer_arr = tạm thời; }}}
Cuối cùng, tính giá trị trung bình của 6 giá trị Analog mẫu trung tâm. Sau đó, giá trị trung bình này được chuyển thành giá trị pH thực tế và được in trên màn hình LCD.
for (int i = 2; i <8; i ++) avgval + = buffer_arr; float volt = (float) avgval * 5.0 / 1024/6; float ph_act = -5,70 * volt + giá trị hiệu chuẩn; lcd.setCursor (0, 0); lcd.print ("pH Val:"); lcd.setCursor (8, 0); lcd.print (ph_act); chậm trễ (1000); }
Hiệu chuẩn điện cực pH
Việc hiệu chuẩn điện cực PH là rất quan trọng trong dự án này. Đối với điều này, chúng ta cần phải có một giải pháp mà giá trị của chúng được biết đến. Đây có thể được coi là giải pháp tham chiếu để hiệu chuẩn cảm biến.
Giả sử, chúng ta có một dung dịch có giá trị PH là 7 (nước cất). Bây giờ khi nhúng điện cực vào dung dịch đối chiếu và giá trị PH hiển thị trên màn hình LCD là 6,5. Sau đó, để hiệu chỉnh nó, chỉ cần thêm 7-6,5 = 0,5 trong biến hiệu chuẩn “giá trị hiệu chỉnh” trong mã. tức là tạo ra giá trị 21,34 + 0,5 = 21,84 . Sau khi thực hiện những thay đổi này, hãy tải lại mã lên Arduino và kiểm tra lại độ pH bằng cách nhúng điện cực vào dung dịch đối chiếu. Bây giờ LCD sẽ hiển thị giá trị pH chính xác, tức là 7 (Các biến thể nhỏ là đáng kể) . Tương tự, điều chỉnh biến này để hiệu chỉnh cảm biến. Sau đó, kiểm tra tất cả các giải pháp khác để có được kết quả chính xác.
Thử nghiệm Máy đo pH Arduino
Chúng tôi đã thử máy đo pH Arduino này bằng cách nhúng nó vào nước tinh khiết và nước Chanh, bạn có thể xem kết quả bên dưới.
Nước tinh khiết:
Nước chanh:
Đây là cách chúng ta có thể xây dựng cảm biến pH bằng Arduino và có thể sử dụng nó để kiểm tra mức độ pH của các chất lỏng khác nhau.
Mã hoàn chỉnh và Video minh họa được đưa ra bên dưới.