Skip to main content

Posts

Showing posts from February, 2021

Arduino đọc Analog của cảm biến độ ẩm đất và lọc nhiễu bằng bộ lọc Kalman

Giá trị analog thường có độ nhiễu lớn vì vậy trước khi xử lý, các giá trị này cần phải cho qua một bộ lọc để phần điều khiển có thể làm việc tốt hơn. Chúng ta sẽ tiến hành đọc giá trị analog của cảm biến độ ẩm đất, sau đó cho qua bộ lọc Kalman và vẽ đồ thị để so sánh giá trị trước và sau khi lọc. Kết nối phần cứng (bên trái là cảm biến độ ẩm đất, bên phải là arduino uno): AO (Analog Ouput) <===> A0 DO (Digital Ouput) <===> 2 (Chưa sử dụng tới nhưng cứ cắm vào sẵn) VCC <===> 5V GND <===> GND Cài đặt thư viện SimpleKalmanFilter bằng cách vào Tools > Manage Libraries... và cài đặt thư viện như sau Viết code #include <SimpleKalmanFilter.h> void setup() { Serial.begin(9600); pinMode (2, INPUT); pinMode(A0, INPUT); pinMode (13, OUTPUT); } SimpleKalmanFilter filter(10, 10, 0.05); float estimate; void loop() { int value = analogRead(A0); estimate = filter.updateEstimate(value); Serial.print("K:"); Serial.print(estimate); Serial.print(&

Bên trong đồng hồ đo điện vạn năng zoyi zt-s4

Đồng hồ vạn năng zoyi zt-s4 chất lượng thực sự không cao, board mạch mỏng, jack cắm đo ampere có độ hoàn thiện kém. Linh kiện mài số, chip xử lý là dạng COB (Chip on Board) hay còn gọi là chip cứt gà. Với gần như cùng mức giá, bạn không nên mua chiếc zoyi zt-s4 mà thay vào đó nên mua chiếc đồng hồ fuyi fy-76.

Board LGT8F328P LQFP32 MiniEVB giao tiếp led TM1637 dùng Arduino và cái kết

LGT8F328P được kỳ vọng thay thế 1-1 cho Atmega328P. Bài viết này hướng dẫn cách sử dụng LGT8F328P để giao tiếp với TM1637. Trước tiên, truy cập vào link https://github.com/LGTMCU/Larduino_HSP và tải về thư viện của LGT cho Arduino như hình dưới Sau đó, giải nén file vừa tải về, copy toàn bộ thư mục LGT bên trong thư mục hardware vào thư mục hardware của Arduino IDE như hình dưới Cuối cùng tạo một sketch mới và viết code y hệt như ở bài https://minhcnguyen.blogspot.com/2021/02/arduino-dieu-khien-led-7-doan-tm1637.html Kết nối chân như dưới đây, bên trái là TM1637, bên phải là board LGT8F328P CLK <===> D2 DIO <===> D3 GND <===> GND VCC <===> 5V Để nạp code, cần phải chọn đúng board "LGT8F328P-LQFP32 MiniEVB" và chọn đúng cổng COM sau đó nhấn nút nạp code như bình thường Kết quả như video dưới đây Câu chuyện: Mới đầu mình kết nối chân VCC của TM1367 vào chân 3.3V của LGT, hiện tượng là board chạy bình thường trong khoảng gần 10s, TM1637 vẫn lên bình thườn

Arduino điều khiển led 7 đoạn TM1637

Mở Arduino IDE, vào Tools > Manage Libraries... để mở cửa sổ quản lý thư viện. Trong cửa sổ quản lý thư viện gõ vào "1637" và chọn cài đặt thư viện TM1637 của tác giả Avishay Orpaz nếu thư viện này chưa cài đặt. Led 7 đoạn được đánh mã theo ABCDEFG như sau Trong ví dụ này chúng ta sẽ làm đèn led hiển thị dòng chữ "đIỆn tỬ CẠC tÔng", mã lệnh được viết như sau #include <Arduino.h> #include <TM1637Display.h> // Module TM1637 có thể hoạt động ở điện áp 3.3v hoặc 5v // Chân VCC của TM1637 nối vào 3.3v của Arduino // Chân GND của TM1637 nối vào GND của Arduino // Chân CLK của TM1637 nối vào chân Digital 2 của Arduino // Chân DIO của TM1637 nối vào chân Digital 3 của Arduino #define CLK 2 #define DIO 3 #define TEST_DELAY 1000 #define FADE_DELAY 100 const uint8_t SEG_DIEN[] = { SEG_B | SEG_C | SEG_D | SEG_E | SEG_G, // d SEG_E | SEG_F, // I SEG_A | SEG_D | SEG_E | SEG_F | SEG_G, // E SEG_C | S

Bên trong đồng hồ đo điện vạn năng Fluke 79-iii

Fluke là một thương hiệu đồng hồ nổi tiếng với chất lượng vượt trội đến từ Mỹ. Dưới đây là những hình ảnh bên trong của chiếc đồng hồ Fluke 79-iii (Fluke 79-3)

Bên trong đồng hồ đo điện vạn năng Wellink HL-1250

Đồng hồ đo điện vạn năng Wellink HL-1250 khá bền. Chip điều khiển có chất lượng tốt, không phải là loại COB (Chip on Board) hay còn gọi là chip cứt gà thường thấy nhiều trên các đồng hồ đo điện vạn năng. Dưới đây là một số hình ảnh bên trong của chiếc đồng hồ này.