BÁO CÁO THỰC HÀNH cơ sở điêṇ tử – VIỄN THÔNG II GIAO TIẾP ARDUINO với IC THỜI GIAN THỰC DS1307

37 65 0
BÁO CÁO THỰC HÀNH cơ sở điêṇ tử – VIỄN THÔNG II GIAO TIẾP ARDUINO với IC THỜI GIAN THỰC DS1307

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC KHOA HỌC KHOA ĐIỆN, ĐIỆN TỬ VÀ CÔNG NGHỆ VẬT LIỆU BÁO CÁO THỰC HÀNH CƠ SỞ ĐIỆN TỬ – VIỄN THÔNG II SINH VIÊN THỰC HIỆN: HỒ VĂN NHẬT MÃ SINH VIÊN: 19T1051013 GVHD: PHAN HẢI PHONG HUẾ, THÁNG 12 NĂM 2021 MỤC LỤC Trang DANH MỤC HÌNH ẢNH DANH MỤC BẢNG BIỂU DANH MỤC HÌNH ẢNH DANH MỤC BẢNG BIỂU LỜI NÓI ĐẦU Trong phát triển điện tử nay, kỹ thuật số dần chiếm ưu số lượng lớn ứng dụng nhiều thiết bị điện tử dân dụng, nhiều lĩnh vực đo lường, điều khiển nhờ vào ưu điểm Có thể nói, tảng kỹ thuật số mạch logic số dựa cổng mà ngày tích hợp IC số Các mạch logic sử dụng ma trận LED để hiển thị thông tin nhằm mục đích thơng báo, quảng cáo nơi công cộng sử dụng rộng rãi Trên sở học môn kỹ thuật số, khuôn khổ thực hành môn học: THỰC HÀNH CƠ SỞ ĐIỆN TỬ VIỄN THÔNG II, em thiết kế giao diện đầy đủ ghép nối với máy tính là: Điều khiển led, motor, servo, gửi dữ liệu lên máy tính, đọc thời gian thực tư module DS1307 đọc nhiệt độ – độ ẩm tư cảm biến DHT11 Với mục đích tìm hiểu kỹ thuật ghép nối máy tính, nâng cao kiến thức Do kiến thức cịn hạn hẹp thời gian thực không nhiều nên giao diện mà em thiết kế cịn nhiều sai sót hạn chế Mặc dù phần thiết kế tính tốn chi tiết mạch, thơng số đơi cịn mang tính lý thuyết, chưa thực tế Em mong đóng góp sửa chữa để giao diện mà em thiết kế mang tính khả thi Em xin chân thành cảm ơn thầy Phan Hải Phong hướng dẫn em hoàn thành thực hành CHƯƠNG GIỚI THIỆU PHẦN MỀM VISUAL STUDIO 1.1 VISUAL STUDIO LÀ GÌ? Visual studio phần mềm hỗ trợ đắc lực hỗ trợ cơng việc lập trình website Cơng cụ tạo lên thuộc quyền sở hữu ông lớn công nghệ Microsoft Năm 1997, phần mềm lập trình có tên mã Project Boston Nhưng sau đó, Microsoft kết hợp cơng cụ phát triển, đóng gói thành sản phẩm Hì nh Visual Studio Visual Studio hệ thống tập hợp tất những liên quan tới phát triển ứng dụng, bao gồm trình chỉnh sửa mã, trình thiết kế, gỡ lỗi Tức là, bạn viết code, sửa lỗi, chỉnh sửa thiết kế ứng dụng dễ dàng với phần mềm Visual Studio mà Không dưng lại đó, người dùng cịn thiết kế giao diện, trải nghiệm Visual Studio phát triển ứng dụng Xamarin, UWP XAML hay Blend 1.2 CÁC TÍNH NĂNG CỦA PHẦN MỀM VISUAL STUDIO Tính đến nay, Visual Studio coi phần mềm lập trình hệ thống hàng đầu, chưa có phần mềm thay Được đánh giá cao Visual Studio sở hữu nhiều tính hấp dẫn Cụ thể:  Đa nền tảng: Phần mềm lập trình Visual Studio Microsoft hỗ trợ sử dụng nhiều tảng khác Không giống trình viết code khác, Visual Studio sử dụng Windows, Linux Mac Systems Điều tiện lợi cho lập trình viên trình ứng dụng  Đa ngôn ngữ lập trình: Visual Studio cho phép sử dụng nhiều ngơn ngữ lập trình khác tư C#, F#, C/C++, HTML, CSS, Visual Basic, JavaScript,… Bởi vậy, Visual Studio dễ dàng phát thơng báo cho bạn chương trình có lỗi  Kho tiện ích mở rộng phong phú: Mặc dù Visual Studio có hệ thống ngơn ngữ hỗ trợ lập trình đa dạng Nhưng lập trình viên muốn sử dụng ngơn ngữ khác, bạn dễ dàng tải xuống tiện ích mở rộng Tính hấp dẫn hoạt động phần chương trình độc lập nên khơng lo làm giảm hiệu phần mềm  Hỗ trợ viết code: Khi sử dụng code vào lập trình, với Visual Studio, cơng cụ đề xuất tới lập trình viên số tùy chọn thay nhằm điều chỉnh đôi chút để đoạn code áp dụng thuận tiện cho người dùng  Tính comment: Một tính hay ho, hỗ trợ cho người lập trình trường hợp “nhớ nhớ qn qn” tính bình luận Tính cho phép lập trình viên để lại nhận xét, giúp dễ dàng ghi nhớ cơng việc cần hồn thành, khơng bỏ sót cơng đoạn CHƯƠNG TỞNG QUAN VỀ LINH KIỆN 2.1 GIỚI THIỆU ARDUINO 2.1.1 Arduino là gì? Arduino bo mạch vi điều khiển nhóm giáo sư sinh viên nước Ý thiết kế đưa vào năm 2005 Mạch Arduino sử dụng để cảm nhận điều khiển nhiều đối tượng khác Nó thực nhiều nhiệm vụ lấy tín hiệu tư cảm biến đến điều khiển đèn, động cơ, nhiều đối tượng khác Ngoài mạch cịn có khả liên kết với nhiều module khác module đọc thẻ tư, ethernet shield, sim900A, ….để tăng khả ứng dụng mạch Phần cứng bao gồm board mạch nguồn mở thiết kế tảng vi xử lý AVR Atmel 8bit, ARM, Atmel 32-bit,… Hiện phần cứng Arduino có tất phiên bản, Tuy nhiên phiên thường sử dụng nhiều Arduino Uno Arduino Mega Phần mềm để lập trình cho mạch Arduino phần mềm IDE 2.1.2 Cấu tạo của Arduino Hì nh Cấ u tạ o củ a Arduino Uno 2.1.3 Thông số bản của Arduino Uno R3 Bả ng Thông số bả n củ a Arduino Uno R3 Vi điều khiển Atmega 328 (họ bit) Điện áp hoạt động 5V – DC (cấp qua cổng USB) Tần số hoạt động 16 MHz Dòng tiêu thụ 30mA Điện áp vào khuyên dùng – 12V – DC Điện áp vào giới hạn – 20V – DC Số chân Digital I/O 14 chân (6 chân PWM) Số chân Analog Dòng tối đa chân I/O Dòng tối đa (5V) (độ phân giải 10 bit) Dòng tối đa (3.3V) 50mA 32 KB (Atmega328) với 0.5KB dùng bootloader Bộ nhớ flash 30mA 500mA SRAM 2KB (Atmega328) EEPROM 1KB (Atmega328) 2.1.4 Các loại Board Arduino phổ biến Không giống hầu hết board mạch lập trình trước đó, Arduino khơng u cầu phần cứng riêng để lập trình mã lên board mà bạn cần sử dụng cáp USB Đồng thời, phần mềm Arduino IDE sử dụng phiên C ++, giúp việc học chương trình trở nên đơn giản Chúng ta tổng hợp số loại Arduino phổ biến sau:  Arduino Uno: Đây loại board đơn giản nên phù hợp với những người bắt đầu tìm hiểu lĩnh vực Dữ liệu số bao gồm 14 chân, đầu vào gồm chân 5V, khả phân giải 1024 mức, tốc độ 16MHz, điện áp tư 7V đến 12V Kích thước Board 5,5x7cm  Arduino Micro: Bao gồm có đến 20 chân, có chân phát PWM Loại có thiết kế nhỏ gọn, kích thước 5x2cm  Arduino Nano: Có thể nói loại board có kích thước nhỏ 2x4cm, việc lắp đặt thực dễ dàng  Arduino Pro: Đây thiết kế mẻ chân số sẵn, tùy vào số chân bạn sử dụng để gắn trực tiếp giúp tiết kiệm khoảng không lớn, ta thường thấy hai loại có nguồn 3.3V 5V  Arduino Mega: Chân số lên đến 64, 14 chân phát PWM, cổng truyền tiếp kích thước lớn 5x10cm  Arduino Leonardo: Là board khơng có cổng nối USB dùng lập trình Được thiết kế chip nhỏ điều khiển Kết nối qua COM ảo kết nối với chuột bàn phím  Arduino LilyPad: Board mạch Lily Pad Arduino cơng nghệ dệt điện tử đeo được mở rộng Leah Sang Buechley, thiết kế cách cẩn thận dòng Lea Leah SparkFun Mỗi board thiết kế cách tưởng tượng với miếng kết nối khổng lồ & mặt sau mịn màng chúng khâu vào quần áo Arduino bao gồm I / O, nguồn board cảm biến chế tạo đặc biệt cho hàng dệt may điện tử  Arduino RedBoard: Board mạch RedBoard Arduino lập trình cáp USB Mini-B Arduino IDE Nó hoạt động Windows mà khơng phải sửa đổi cài đặt bảo mật bạn Nó khơng đổi chip USB FTDI sử dụng hồn tồn phẳng mặt sau Tạo đơn giản để sử dụng thiết kế dự án Chỉ cần cắm board, chọn tùy chọn menu để chọn Arduino UNO bạn sẵn sàng để tải lên chương trình Bạn điều khiển RedBoard qua cáp USB giắc cắm thùng Ngồi ra, cịn kể đến: Arduino Diecimila, Arduino Duemilanove, Arduino Due, v.v 2.1.5 Ứng dụng Arduino Arduino có nhiều ứng dụng đời sống, việc chế tạo thiết bị điện tử chất lượng cao Một số ứng dụng kể đến như:  Lập trình robot: Arduino phần quan trọng trung tâm xử lí giúp điều khiển hoạt động robot  Lập trình máy bay khơng người lái Có thể nói ứng dụng có nhiều kì vọng tương lai  Game tương tác: dùng Arduino để tương tác với Joystick, hình,… để chơi trị Tetrix, phá gạch, Mario… nhiều game sáng tạo nữa  Arduino điều khiển thiết bị ánh sáng cảm biến tốt Là những phần quan trọng đèn giao thông, hiệu ứng đèn nháy cài đặt làm bật biển quảng cáo  Arduino ứng dụng máy in 3D nhiều ứng dụng khác tùy thuộc vào khả sáng tạo người sử dụng 10 GND SDA 3V để cấp nguồn ni dự phịng Chân nối đất Chân dữ liệu nối tiếp (Serial Data) Đây chân dữ liệu vào/ra giao thức I2C Chân cần đưa lên nguồn 5V thông qua điện trở 10kΩ Chân đầu vào xung đồng hồ nối tiếp (Serial SCL Clock) Đây chân ngõ vào xung nhịp giao thức I2C Chân phải kéo đến 5V thông qua điện trở 10kΩ Ngõ xuất xung vng, tần số lập SQW/OU T trình để thay đổi tư 1Hz, 4Khz, 8Khz, 32Khz Nếu khơng sử dụng, chân thả Chân cấp nguồn chính, khoảng 5VDC Nếu VCC VCC khơng có mà VBAT có DS1307 hoạt động bình thường khơng ghi đọc dữ liệu 2.5 GIAO TIẾP ARDUINO VỚI IC THỜI GIAN THỰC DS1307 Hì nh 13 Sơ đồ nguyên lý DS1307 vớ i Arduino 23 2.6 GIAO TIẾP ARDUINO VỚI CẢM BIẾN NHIỆT ĐỘ, ĐỘ ẨM DHT11 Cảm biến nhiệt độ độ ẩm DHT11 đời sau sử dụng thay cho dịng SHT1x những nơi khơng cần độ xác cao nhiệt độ độ ẩm Cảm biến sử dụng giao tiếp số theo chuẩn dây Hì nh 14 Module DHT11 ỨNG DỤNG: - Dùng để đo nhiệt độ , độ ẩm - Các ứng dụng đo nhiệt độ , độ ẩm khác THÔNG SỐ KỸ THUẬT - Nguồn: -> VDC - Dòng sử dụng: 2.5mA max (khi truyền dữ liệu) - Đo tốt độ ẩm 20-80%RH với sai số 5% - Đo tốt nhiệt độ to 50°C sai số ±2°C - Tần số lấy mẫu tối đa 1Hz (1 giây lần) - Kích thước 15mm x 12mm x 5.5mm - chân, khoảng cách chân 0.1mm 2.7 LED ĐƠN LED đơn linh kiện phát quang dựa tượng tái hợp lỗ trống/eletron chân bán dẫn Ngõ LED gồm hai chân Anode Cathode có màu sắc hồn tồn khác tùy vào phương pháp chế 24 tạo Bằng cách ghép tổ hợp LED nối tiếp hay song song tạo mạch điện phát màu sắc ý LED phát sáng điện áp đầu Anode cao Cathode với giá trị hoàn toàn xác định tùy theo tưng loại 2.8 GIỚI THIỆU VỀ ĐỘNG CƠ DC Động điện chiều DC gồm hai phần chính: - Stato (phần đứng yên) với cực tư nam châm vĩnh cửu nam châm điện - Roto (phần chuyển động) với cuộn dây quấn, cổ góp chổi điện Chức chổi than – vành góp để đưa điện áp chiều vào cuộn dây phần ứng đổi chiều dòng điện chiều cuộn dây phần ứng Số lượng chổi than số lượng cực tư (một nửa có cực tính dương nửa có cực tính âm) Hì nh 15 Minh họa cấu tạo động điện chiều 2.9 GIỚI THIỆU VỀ ĐỘNG CƠ BƯỚC SERVO Động bước phân loại gồm động nam châm vĩnh cửu, động tư trở biến thiên động hỗn hợp Động bước có nhiều loại góc quay phân biệt tư 90 độ đến 0.72 độ nhỏ Động nam châm vĩnh cửu có cấu trúc gồm cuộn dây quấn roto, stato nam châm vĩnh cửu Loại có cấu trúc gần giống với động AC đồng 25 Hì nh 16 Minh họa động bước BYJ28 sơ đồ ngun lý bên đợng Động có tư trở biến thiên có cấu trúc roto làm sắt nhẹ, số cực roto số cực stato, cuộn dây quấn hai cực stato đối diện Loại gọi động phản kháng, động phản kháng có góc quay giới hạn tư 1.8 đến 300 chế độ điều khiển bước đủ, moment hãm tư đến 50Ncm, tần số khởi động lớn Khz tần số làm việc lớn điều kiện không tải 20Khz Động bước hỗn hợp: Đây loại động cảm ứng, có góc bước thay đổi khoảng 0.36 độ đến 15 độ chế độ moment đủ, moment hãm tư đến 1000Ncm, tần số khởi động lớn 40Khz Đây loại động sử dụng nhiều kết hợp ưu điểm hai loại động nam châm vĩnh cửu động biến tư trở Phương pháp điều khiển động bước gồm điều khiển ba đối tượng: Góc quay, chiều quay tốc độ quay Điều khiển góc quay: Động bước điều khiển góc quay cách xác, góc quay nhỏ mà động bước quay hiểu bước Có hai phương pháp điều khiển phổ biến: phương pháp điều khiển đủ bước phương pháp điều khiển nửa bước Điều khiển bước đủ phương pháp điều khiển mà số bước tối đa chu kỳ số cặp cực Phương pháp thực cách kích dẫn lúc hai cực đối xứng tạo moment quay chiều 26 CHƯƠNG THIẾT KẾ – LƯU ĐỒ THUẬT TOÁN 3.1 THIẾT KẾ 3.1.1 Sơ đồ nguyên lý mô phỏng Proteus Hì nh 17 Minh họ a sơ đồ nguyên lý mạ ch 3.1.2 Giao diện điều khiển LED – MOTOR – SERVO 27 Hì nh 18 Giao diệ n điề u khiể n LED – MOTOR – SERVO 3.1.3 Giao diện đọc nhiệt độ, độ ẩm – Điều khiển LCD Hì nh 19 Giao diệ n đọ c nhiệ t độ , độ ẩ m – Điề u khiể n LCD 3.2 LƯU ĐỒ THUẬT TOÁN 3.2.1 Lưu đồ thuật toán điều khiển LED 28 Giải thích lưu đồ thuật toán điều khiển LED:  Trên giao diện thiết kế, ta nhấn vào gửi ký tự “~”, nhấn lần LED lần gửi ký tự “!”, này lặp lại tuần hồn Bên phía arduino, mở cổng COM để giao tiếp, nhận ký tự “~” thực lệnh bật LED 1, ngược lại nhận ký tự “!” thực lệnh tắt LED  Các LED lại gửi ký tự lưu đồ thuật toán cách hoạt động tương tự LED  Các ký tự tùy chọn, người lập trình đặt tên 3.2.2 Lưu đồ thuật toán điều khiển MOTOR 29 Giải thích lưu đồ thuật toán điều khiển MOTOR: Sẽ gửi ký tự “[” nhấn, arduino nhận ký tự thực lệnh quay động DC ngược chiều kim đồng hồ Sẽ gửi ký tự “]” nhấn, arduino nhận ký tự thực lệnh quay động DC theo chiều kim đồng hồ Sẽ gửi ký tự “z” nhấn, arduino nhận ký tự thực lệnh dưng động DC Sẽ gửi ký tự “/” nhấn, arduino nhận ký tự thực lệnh động DC sẵn sàng hoạt động 3.2.3 Lưu đồ thuật toán điều khiển SERVO 30 Giải thích lưu đồ thuật toán điều khiển SERVO: Sẽ gửi ký tự “}” nhấn, arduino nhận ký tự thực lệnh quay động SERVO tư góc Sẽ gửi ký tự “{” nhấn, arduino nhận ký tự thực lệnh quay động SERVO tư góc Sẽ gửi ký tự chuỗi ký tự dạng text, arduino nhận chuỗi ký tự thực chuyển đổi sang dạng số thực điều khiển SERVO góc sau chuỗi text chuyển sang dạng số 3.2.4 Lưu đồ thuật toán đọc nhiệt độ – độ ẩm 31 Giải thích lưu đồ thuật toán:  Sau cổng COM kết nối giá trị thời gian thực, nhiệt độ độ ẩm mà arduino đọc tư module DS1307 DHT11 gửi lệnh Serial.println  Giao diện thiết kế nhận giá trị gán vào textbox tương ứng lệnh Sẽ gửi chuỗi dạng text có độ dài đó, arduino nhận chuỗi này, sau tiến hành in hình LCD 32 CHƯƠNG KẾT QUẢ THỰC NGHIỆM – KẾT LUẬN 4.1 KẾT QUẢ Hì nh 20 Kế t quả thự c nghiệ m điề u khiể n LED – MOTOR – SERVO 33 Hì nh 21 Kế t quả thự c nghiệ m đọ c nhiệ t độ , độ ẩ m – Điề u khiể n LCD 34 4.2 KẾT LUẬN Ưu điểm: - Phần cứng thiết kế nhỏ gọn lắp ráp theo kiểu module nên dễ dàng thay cũng kiểm tra các linh kiển mạch - Phần mềm chạy ổn định, sai lệch nhiệt độ khoảng cho phép - Có ứng dụng thực tế Nhược điểm: - Phần cứng thiết kế chưa đươc đẹp - Sai số mạch lớn Sau thời gian nghiên cứu tìm hiểu thực thực hành em hoàn thành Em nỗ lực cố gắng để hoàn thành thực hành giao Trong trình thực em nhận giúp đỡ nhiệt tình bạn bè lớp đặc biệt hướng dẫn nhiệt tình thầy “Phan Hải Phong” giúp em hoàn thành thực hành giao Em xin chân thành cảm ơn Tuy vậy, kiến thức cịn hạn chế, em khơng tránh khỏi gặp sai sót, em mong đóng góp bảo thầy bạn giúp cho thực hành em thêm hoàn thiện Em xin chân thành cảm ơn! 35 PHỤ LỤC THƯ VIỆN LCD I2C Link tải thư viện: https://bom.to/L1LWf7 THƯ VIỆN ĐỒNG HỒ THỜI GIAN THỰC Link tải thư viện: https://bom.to/I4gU1w THƯ VIỆN CẢM BIẾN NHIỆT ĐỘ, ĐỘ ẨM Link tải thư viện: https://bom.to/LVe8Nz FILE PROTEUS, CODE ARDUINO VÀ GIAO DIỆN BÀI THỰC HÀNH Link tải: https://bom.so/SglVcW TRƯỜNG ĐẠI HỌC KHOA HỌC KHOA ĐIỆN, ĐIỆN TỬ & CNVL CỢNG HỊA XÃ HỢI CHỦ NGHĨA VIỆT NAM Độc lập – Tự – Hạnh phúc PHIẾU ĐÁNH GIÁ TIỂU LUẬN Học kỳ Năm học 2021 – 2022 Cán chấm thi Nhận xét: Cán chấm thi Nhận xét: Điểm đánh giá CBChT1: Điểm đánh giá CBChT2: Bằng số: Bằng số: Bằng chữ: Bằng chữ: Điểm kết luận: Bằng số Bằng chữ: CBChT1 (Ký ghi rõ họ tên) Thừa Thiên Huế, ngày …… tháng …… năm 20… CBChT2 (Ký ghi rõ họ tên) ... VBAT có DS1307 hoạt động bình thường khơng ghi đọc dữ liệu 2.5 GIAO TIẾP ARDUINO VỚI IC THỜI GIAN THỰC DS1307 Hì nh 13 Sơ đồ nguyên lý DS1307 vớ i Arduino 23 2.6 GIAO TIẾP ARDUINO VỚI CẢM... nới giao tiếp IC2 với LCD 16×2 Bảng Giao tiếp I2C LCD Arduino Module I2C LCD 16×2 Arduino Nano/Uno GND GND VCC 5V SDA A4/SDA SCL A5/SCL 2.4 GIỚI THIỆU IC THỜI GIAN THỰC DS1307 IC thời gian. .. học: THỰC HÀNH CƠ SỞ ĐIỆN TỬ VIỄN THÔNG II, em thiết kế giao diện đầy đủ ghép nối với máy tính là: Điều khiển led, motor, servo, gửi dữ liệu lên máy tính, đọc thời gian thực tư module DS1307

Ngày đăng: 31/12/2021, 19:48

Hình ảnh liên quan

- Hỗ trợ màn hình: LCD1602,1604,2004 (driver HD44780). - Giao tiếp: I2C. - BÁO CÁO THỰC HÀNH cơ sở điêṇ tử – VIỄN THÔNG II GIAO TIẾP ARDUINO với IC THỜI GIAN THỰC DS1307

tr.

ợ màn hình: LCD1602,1604,2004 (driver HD44780). - Giao tiếp: I2C Xem tại trang 21 của tài liệu.

Mục lục

  • MỤC LỤC

  • 2.1. GIỚI THIỆU ARDUINO

Tài liệu cùng người dùng

Tài liệu liên quan