Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
764,9 KB
Nội dung
MỤC LỤC CHƯƠNG 1: PHÂN TÍCH NHIỆM VỤ ĐẶT VẤN ĐỀ 2 MỤC ĐÍCH NGHIÊN CỨU ĐỐI TƯỢNG NGHIÊN CỨU PHẠM VI NGHIÊN CỨU .2 NỘI DUNG NGHIÊN CỨU .2 CHƯƠNG 2: THIẾT KẾ PHẦN CỨNG LINH KIỆN CẦN THIẾT: CẢM BIẾN DÒNG ĐIỆN ACS712-20A: .3 CẢM BIẾN ĐIỆN ÁP ZMPT101B: 4 STM32F103C8T6 XUẤT MÀN HÌNH LCD QUA GIAO TIẾP I2C a Mạch điều khiển dùng cho hình 16x02 b Ưu điểm việc sử dụng giao tiếp I2C c Kết nối module hình với STM32F103C8T6 10 CHƯƠNG 3: THIẾT KẾ MẠCH IN .11 CHƯƠNG 4: THIẾT KẾ PHẦN MỀM 12 CHƯƠNG 5: KẾT QUẢ THỰC NGHIỆM .15 CHƯƠNG 6: ĐÁNH GIÁ VÀ KẾT LUẬN .17 CHƯƠNG 1: PHÂN TÍCH NHIỆM VỤ ĐẶT VẤN ĐỀ Xuất phát từ nhu cầu thực tiễn, thiết bị đo dịng điện, điện áp có cấu tạo nhỏ gọn, mang lại kết nhanh chóng xác nhất, tăng khả động cho người sử dụng Thiết bị đo dịng điện, điện áp có vai trị quan trọng linh vực điện máy cơng nghiệp nghiên cứu học tập, thiết bị mang đến tính trực quan thực tiễn cho người dùng MỤC ĐÍCH NGHIÊN CỨU Để hồn thành học phần đồ án I, tạo sở cho đồ án sau Với nhóm nghiên cứu hội để kiểm tra lại kiến thức đồng thời biết vận dụng kiến thức vào thực tiễn, tìm tịi khám phá, tiếp cận nghiên cứu, biết cách làm việc nhóm mục đích chung Tạo sản phẩm có ứng dụng thực tiễn ĐỐI TƯỢNG NGHIÊN CỨU Cảm biến dòng điện ACS712-20A Cảm biến điện áp AC Voltage Sensor ZMPT101B Vi điều khiển STM32 Lcd 1602 phù hợp để xuất liệu cần đo Cách lập trình để lcd cảm biến giao tiếp với vi điều khiển PHẠM VI NGHIÊN CỨU Do đồ án học song song với học phần vi xử lí nên đồ án nhóm tập trung vào tìm tịi kiến thức mạng, tham khảo tài liệu, mơ thiết kế thiết bị đo hồn chỉnh NỘI DUNG NGHIÊN CỨU Báo cáo gồm chương: Chương 1: Phân tích nhiệm vụ Chương 2: Thiết kế phần cứng Chương 3: Thiết kế mạch in Chương 4: Thiết kế phần mềm Chương 5: Kết thực nghiệm Chương 6: Đánh giá kết luận CHƯƠNG 2: THIẾT KẾ PHẦN CỨNG LINH KIỆN CẦN THIẾT: Cảm biến dòng điện ACS712-20A Cảm biến điện áp ZMPT101B STM32F103C8T6 Modun điều khiển hình LCD Màn hình LCD 16x2 Dây kết nối CẢM BIẾN DÒNG ĐIỆN ACS712-20A: Module cảm biến dòng điện ACS712 20A sử dụng IC ACS712ELC dựa hiệu ứng Hall chuyển dòng điện cần đo thành giá trị điện ACS712 IC cảm biến dịng tuyến tính dựa hiệu ứng Hall Chân ACS712 xuất tín hiệu analog chân Vout biến đổi tuyến tính theo Ip (Dịng điện cần đo) để lấy mấu thứ cấp DC (hoặc AC) phạm vi cho phép Tụ Cf dùng để chống nhiễu a Thông số kỹ thuật : Nguồn: 5VDC Điện áp cảm biến tối đa: 250VAC Tín hiệu đầu ra: Analog 0~5VDC Độ nhạy đầu từ 94-104mV/A Ip: 20A Điện trở dây dẫn 1.2mΩ b Sơ đồ kết nối vi xử lý: c Cách sử dụng cảm biến ACS712 : - Đo dòng điện DC: phải mắc tải nối tiếp Ip+ Ip- chiều, dòng điện từ Ip+ đến Ip- Vout mức điện áp tương ứng 2.5-5VDC tương ứng dòng 0~max, mắc ngược Vout điện 2.5~0VDC tương ứng với 0~(-Max) Khi cấp nguồn 5VDC cho module chưa có dịng Ip (chưa có tải mắc nối tiếp) Vout=2.5VDC, dịng Ip (dịng tải) Max Vout=5DC, Vout tuyến tính với dịng Ip khoảng 2.5~5VDC tương ứng vơi dòng 0~Max - Đo dòng điện AC: cấp nguồn 5v cho module chưa có dịng dịng Ip (chưa có tải mắc nối tiếp với domino), Vout=2.5v Khi có dịng xoay chiều Ip (dịng AC) dịng xoay chiều độ lớn thay đổi liên tục theo hàm sin, nên điện Vout điện xoay chiều hình sin có độ lớn tuyến tính với dịng điện AC, đến 5V (thế xoay chiều xoay chiều) tương ứng với -20A đến 20A (dòng xoay chiều) Cảm biến điện áp ZMPT101B: - Cảm biến điện áp ZMPT101B sử dụng để đo điện áp AC cách xác cuộn biến áp ZMPT101B, cảm biến có khả đo tối đa 250VAC với biến trở tinh chỉnh giá trị analog đầu thích hợp - Thông số kĩ thuật: Nguồn sử dụng: 5VDC Điện áp cảm biến tối đa: 250VAC Tín hiệu đầu ra: Analog 0~5VDC Dịng đầu vào định mức: 2mA Dòng đầu định mức: 2mA Nhiệt độ: -40~60 - Mô-đun cảm kháng lẫn điện áp hoạt động đầu AC pha, trang bị biến áp điện áp có độ xác cao cường độ dịng điện hoạt động xác cao, dễ dàng thu thập điện áp 250v tín hiệu nguồn AC STM32F103C8T6 STM32 dòng chip phổ biến ST với nhiều họ thông dụng F0,F1,F2,F3,F4… Stm32f103 thuộc họ F1 với lõi ARM COTEX M3 STM32F103 vi điều khiển 32 bit, tốc độ tối đa 72Mhz Giá thành rẻ so với loại vi điều khiển có chức tương tự Mạch nạp cơng cụ lập trình đa dạng dễ sử dụng Một số ứng dụng chính: dùng cho driver để điều khiển ứng dụng, điều khiển ứng dụng thông thường, thiết bị cầm tay thuốc, máy tính thiết bị ngoại vi chơi game, GPS bản, ứng dụng công nghiệp, thiết bị lập trình PLC, biến tần, máy in, máy quét, hệ thống cảnh báo, thiết bị liên lạc nội bộ… Phần mềm lập trình: có nhiều trình biên dịch cho STM32 IAR Embedded Workbench, Keil C… em sử dụng phần mềm MX Cube Keil C để lập trình Thư viện lập trình: có nhiều loại thư viện lập trình cho STM32 như: STM32snippets, STM32Cube LL, STM32Cube HAL, Standard Peripheral Libraries, Mbed core Mạch nạp: có nhiều loại mạch nạp : ULINK, J-LINK , CMSIS-DAP, STLINK… Ở em sử dụng mạch nạp STLINK Sơ lược Board : cổng Mini USB dùng để cấp nguồn, nạp debug MCU bao gồm MCU nạp MCU dùng để lập trình Có chân Output riêng cho chân mạch nạp MCU1 Có chân Output đầy đủ cho chân MCU2 Chân cấp nguồn ngồi riêng cho MCU2 khơng sử dụng nguồn từ USB Thạch anh 32,768khz dùng cho RTC Backup Chân nạp dùng cho chế độ nạp boot loader Nút Reset led hiển thị chân PB9, led báo nguồn cho MCU2 Cấu hình chi tiết STM32F103C8T6: ARM 32-bit Cortex M3 với clock max 72Mhz Bộ nhớ: o 64 kbytes nhớ Flash(bộ nhớ lập trình) 20kbytes SRAM Clock, reset quản lý nguồn o o o Điện áp hoạt động 2.0V -> 3.6V Power on reset(POR), Power down reset(PDR) programmable voltage detector (PVD) o Sử dụng thạch anh từ 4Mhz -> 20Mhz o Thạch anh nội dùng dao động RC mode 8Mhz 40khz o Sử dụng thạch anh 32.768khz sử dụng cho RTC Trong trường hợp điện áp thấp: o Có mode :ngủ, ngừng hoạt động hoạt động chế độ chờ Cấp nguồn chân Vbat pin để hoạt động RTC sử dụng lưu trữ data nguồn cấp ADC 12 bit với kênh cho o o Khoảng giá trị chuyển đổi từ – 3.6V o Lấy mẫu nhiều kênh kênh Có cảm biến nhiệt độ nội DMA: chuyển đổi giúp tăng tốc độ xử lý khơng có can thiệp sâu CPU o o kênh DMA o o o o Hỗ trợ DMA cho ADC, I2C, SPI, UART timer timer 16 bit hỗ trợ mode IC/OC/PWM timer 16 bit hỗ trợ để điều khiển động với mode bảo vệ ngắt input, dead-time watdog timer dùng để bảo vệ kiểm tra lỗi o sysTick timer 24 bit đếm xuống dùng cho ứng dụng hàm Delay… Hỗ trợ kênh giao tiếp bao gồm: o I2C(SMBus/PMBus) o USART(ISO 7816 interface, LIN, IrDA capability, modem control) o SPIs (18 Mbit/s) o CAN interface (2.0B Active) o USB 2.0 full-speed interface Kiểm tra lỗi CRC 96-bit ID XUẤT MÀN HÌNH LCD QUA GIAO TIẾP I2C Mạch điều khiển hình 16x02 giao tiếp I2C sử dụng IC điều khiển hình kí tự gồm 16 cột dòng giúp tiết kiệm dây nối với vi điều khiển cho khả hiển thị nhanh với nhiều chức a Mạch điều khiển dùng cho hình 16x02 Thơng thường, để điều khiển hiển thị kí tự từ vi điều khiển xuất hình 16x02 bạn cần tới 7-8 dây nối đến chân vi điều khiển Điều gây nhiều phiền tối: sai dây, mạch rườm ra, khó viết code Những điều mạch điều khiển hình khắc phục hồn tồn số lượng dây tín hiệu giảm cịn nhất: dây Bằng việc sử dụng giao tiếp I2C, việc điều khiển trực tiếp hình chuyển sang cho IC xử lý nằm mạch Bạn việc gửi mã lệnh nội dung hiển thị, giúp vi điều khiển có nhiều thời gian để xử lý tiến trình phức tạp khác b Ưu điểm việc sử dụng giao tiếp I2C Giao tiếp I2C sử dụng dây tín hiệu: SDA SCL giúp tiết kiệm chân vi điều khiển Tốc độ truyền liệu lên đến 400Kbps Dữ liệu truyền nhận đảm bảo tính tồn vẹn sử dụng chế phản hồi (ACK) byte liệu Có khả kết nối nhiều thiết bị với nhau: mạch có sẵn mối hàn A0, A1, A2 để thay đổi địa module Địa mặc định: 0x4E, mắc vào I2C bus tối đa module (3bit address set) Điện áp hoạt động: 3V-6V Để điều khiển độ tương phản hình, bạn xoay biến trở màu xanh c Kết nối module hình với STM32F103C8T6 Module hình LCD (16x2) GND Vcc SDA SCL 10 Arduino GND 5V B7 B6 CHƯƠNG 3: THIẾT KẾ MẠCH IN 11 CHƯƠNG 4: THIẾT KẾ PHẦN MỀM Code: #include "main.h" #include "i2c-lcd.h" #include "stdio.h" #include "string.h" float ACS17_sensitivity = 0.1; // 0.1 for 20A Model float ACS17_voltage; float ACS17_current; char ACS17_display[15]; float ZMPT101B_voltage; char ZMPT101B_display[20]; void SystemClock_Config(void); static void MX_GPIO_Init(void); static void MX_DMA_Init(void); static void MX_ADC1_Init(void); static void MX_USART2_UART_Init(void); 12 static void MX_I2C1_Init(void); int main(void) { HAL_Init(); SystemClock_Config(); MX_GPIO_Init(); MX_DMA_Init(); MX_ADC1_Init(); MX_USART2_UART_Init(); MX_I2C1_Init(); HAL_ADC_Start_DMA(&hadc1,(uint32_t*)readADCValue,2); lcd_init(); lcd_send_string("Hello World"); HAL_Delay(1000); lcd_clear(); while (1) { ACS17_voltage = (float) readADCValue[0] * 3.3 * / 4095; ACS17_current =(ACS17_voltage - 2.5)/ACS17_sensitivity; uint16_t max_v = 0; uint16_t temp = readADCValue[1]; if (max_v < temp) { max_v = temp; 13 } ZMPT101B_voltage = (float) ((max_v*44/273)-250); sprintf(ACS17_display,"ACS17: %.2f A",ACS17_current); sprintf(ZMPT101B_display,"ZMPT101B: %.1f V",ZMPT101B_voltage); lcd_put_cur(0,0); lcd_send_string(ACS17_display); lcd_put_cur(1,0); lcd_send_string(ZMPT101B_display); HAL_Delay(10); 14 CHƯƠNG 5: KẾT QUẢ THỰC NGHIỆM 15 16 CHƯƠNG 6: ĐÁNH GIÁ VÀ KẾT LUẬN Các kết đạt được: Trên sở thiết kế phần cứng phần mềm nhóm em đạt số kết sau Về phần cứng: Tìm hiểu vi điều khiển STM32F103C8T6, chân vào ra, cách sử dụng đấu nối với linh kiện khác ACS712, ZMPT101B LCD 16x02 Về phần mềm: Các thuật toán điều khiển STM32F103C8T6 với cảm biến ACS712, ZMPT101B LCD 16x02 Một số hạn chế: Trong trình làm đồ án chúng em đa cố gắng tìm hiểu, nghiên cứu tham khảo thêm số tài liệu khác để đạt kết tốt Tuy nhiên kiến thức chúng em có hạn nên khơng thể hoàn toàn hiểu rõ hết mạch số yếu tố khách quan thiết bị hay sai sót q trình lắp mạch mà đồ án có nhiều điểm hạn chế thiếu sót Lời cảm ơn: Một lần nữa, chúng em xin chân thành cảm ơn thầy Hồng Đức Chính hướng dẫn chúng em tận tình trình thực đồ án 17 ... tiễn, thiết bị đo dịng điện, điện áp có cấu tạo nhỏ gọn, mang lại kết nhanh chóng xác nhất, tăng khả động cho người sử dụng Thiết bị đo dịng điện, điện áp có vai trị quan trọng linh vực điện máy công. .. máy công nghiệp nghiên cứu học tập, thiết bị mang đến tính trực quan thực tiễn cho người dùng MỤC ĐÍCH NGHIÊN CỨU Để hoàn thành học phần đồ án I, tạo sở cho đồ án sau Với nhóm nghiên cứu hội... Analog 0~5VDC Dòng đầu vào định mức: 2mA Dòng đầu định mức: 2mA Nhiệt độ: -40~60 - Mô-đun cảm kháng lẫn điện áp hoạt động đầu AC pha, trang bị biến áp điện áp có độ xác cao cường độ dịng điện hoạt