Đồ án HCMUTE: Thiết kế và thi công mạch quang báo sử dụng PIC18 điều khiển qua tin nhắn

Khám phá đồ án HCMUTE thiết kế mạch quang báo điều khiển bằng PIC18 qua tin nhắn điện thoại và máy tính, ứng dụng công nghệ hiện đại.

Người đăng

Ẩn danh

Thể loại

đồ án tốt nghiệp

2016

98
2
0

Phí lưu trữ

35 Point

Mục lục chi tiết

LỜI CAM ĐOAN

LỜI CẢM ƠN

1. CHƯƠNG 1: ĐẶT VẤN ĐỀ

2. CHƯƠNG 2: GIỚI THIỆU

3. CHƯƠNG 3: THIẾT KẾ PHẦN CỨNG

4. CHƯƠNG 4: THIẾT KẾ PHẦN MỀM

5. CHƯƠNG 5: KẾT LUẬN

Tóm tắt

I. Thiết kế mạch điện tử

Đồ án tập trung vào thiết kế mạch điện tử điều khiển quang báo sử dụng vi điều khiển PIC18. Mạch bao gồm các thành phần chính: vi điều khiển PIC18F4620, module GSM (SIM900), mạch quang báo với LED báo hiệu, và các mạch giao tiếp cần thiết. Thiết kế mạch bảo động được tối ưu cho điện tử công suất thấp, đảm bảo tiêu thụ điện năng thấp. Sơ đồ mạch điện được thiết kế chi tiết, bao gồm sơ đồ khối, sơ đồ nguyên lý, và mạch in. Quá trình mô phỏng mạch điện tử được thực hiện bằng phần mềm Proteus, giúp kiểm tra và hiệu chỉnh thiết kế trước khi chế tạo. Hướng dẫn thiết kế mạch cung cấp các thông số kỹ thuật, lựa chọn linh kiện, và các bước kết nối chi tiết. Hệ thống bảo động được thiết kế với tính năng điều khiển từ xa qua tin nhắn, cụ thể là điều khiển bằng SMS. Ứng dụng vi điều khiển PIC18F cho phép linh hoạt và dễ dàng trong việc lập trình và điều khiển hệ thống.

1.1 Lựa chọn vi điều khiển PIC18F4620

Vi điều khiển PIC18F4620 được lựa chọn dựa trên các ưu điểm vượt trội: tập lệnh 35 lệnh, tốc độ hoạt động tối đa 64MHz, 4 port điều khiển vào ra, nhiều bộ định thời (Timer0, Timer1, Timer2, Timer3), module ADC 10bit, module PWM 10bit, giao tiếp UART, giao tiếp RS232, hỗ trợ I2C, chế độ sleep tiết kiệm năng lượng, và khả năng nạp chương trình ICSP. Sự lựa chọn này được chứng minh qua việc sử dụng PIC18 trong thiết kế mạch báo động. Việc sử dụng PIC18F4620 giúp giảm thiểu số lượng linh kiện, đơn giản hóa quá trình thiết kế mạch báo động, và tiết kiệm chi phí. Tài liệu tham khảo về PIC18F4620 rất phong phú, hỗ trợ quá trình lập trình PIC18 dễ dàng hơn. Hướng dẫn lập trình PIC được cung cấp giúp người dùng hiểu rõ cách sử dụng vi điều khiển này trong dự án. Ngôn ngữ lập trình C được sử dụng để lập trình cho vi điều khiển, giúp quá trình phát triển phần mềm hiệu quả hơn. MPLAB X IDE là môi trường phát triển tích hợp được sử dụng để lập trình và kiểm thử phần mềm.

1.2 Thiết kế mạch quang báo và giao tiếp

Phần thiết kế mạch quang báo sử dụng LED báo hiệu để hiển thị thông tin. Module led ma trận được điều khiển bởi PIC18F4620. Phương pháp quét led được sử dụng để hiển thị thông tin một cách liền mạch. Module GSM SIM900 được tích hợp để thực hiện chức năng giao tiếp tin nhắn. Giao tiếp UART được sử dụng để truyền dữ liệu giữa PIC18F4620module GSM. Thiết kế mạch bảo động đảm bảo khả năng tương thích và ổn định của hệ thống. Kiểm thử phần cứng được thực hiện để đảm bảo hiệu quả hoạt động của mạch. Tài liệu kỹ thuật về module GSM, module cảm biến, và các giao tiếp được tham khảo để đảm bảo tính chính xác của thiết kế. Mã nguồn của chương trình điều khiển được cung cấp, bao gồm các hàm điều khiển LED báo hiệumodule GSM. Phát triển phần mềm được thực hiện một cách bài bản, đảm bảo sự ổn định và hiệu quả của hệ thống. Kiểm thử phần cứng được thực hiện để đảm bảo hiệu quả hoạt động của mạch. Kiểm thử phần mềm đảm bảo tính ổn định và hiệu quả.

II. Lập trình PIC18 và giao tiếp tin nhắn

Phần này tập trung vào lập trình PIC18 để điều khiển mạch báo động và giao tiếp với module GSM. Ngôn ngữ lập trình C được sử dụng. Mã nguồn được viết để xử lý dữ liệu nhận được từ GSM module thông qua giao tiếp tin nhắn. Chương trình xử lý các lệnh điều khiển từ tin nhắn, điều khiển mạch quang báo, và các cảm biến (nếu có). Kiểm thử phần mềm được thực hiện để đảm bảo sự chính xác và hoạt động ổn định của chương trình. Hướng dẫn lập trình PIC chi tiết được cung cấp. Phát triển phần mềm bao gồm các bước thiết kế, viết code, debug, và kiểm thử. Quản lý năng lượng được xem xét để tối ưu hóa hiệu suất sử dụng pin. Phần mềm MPLAB X IDE được sử dụng như một công cụ hỗ trợ mạnh mẽ trong quá trình phát triển phần mềm. Thuật toán được thiết kế để đảm bảo hệ thống hoạt động hiệu quả và đáp ứng các yêu cầu của người dùng.

2.1 Xử lý tin nhắn và điều khiển

Phần mềm được thiết kế để nhận và phân tích nội dung tin nhắn gửi đến module GSM SIM800L. Hệ thống có khả năng nhận biết các lệnh điều khiển từ tin nhắn. Thuật toán xử lý lệnh được thiết kế rõ ràng và hiệu quả. Các lệnh điều khiển có thể bao gồm bật/tắt mạch quang báo, điều chỉnh độ sáng LED báo hiệu, và các chức năng khác. Giao tiếp tin nhắn được thực hiện qua giao thức AT command của module GSM. Phần mềm được viết bằng ngôn ngữ lập trình C, tối ưu cho vi điều khiển PIC18. Kiểm thử phần mềm được thực hiện để đảm bảo sự chính xác và hoạt động ổn định của chương trình. Hệ thống bảo mật (nếu có) được tích hợp để ngăn chặn truy cập trái phép. Tài liệu kỹ thuật về module GSM SIM900 được tham khảo để đảm bảo tính chính xác của code. Mã nguồn của chương trình được cung cấp, giúp người dùng dễ dàng hiểu và sửa đổi.

2.2 Giao diện điều khiển từ máy tính

Ngoài điều khiển bằng SMS, đồ án còn nghiên cứu khả năng điều khiển từ xa qua máy tính. Giao diện người dùng đơn giản và trực quan được thiết kế bằng Visual Basic. Giao tiếp máy tính được thực hiện qua cổng nối tiếp hoặc USB. Lập trình Visual Basic được sử dụng để tạo giao diện. Giao thức giao tiếp giữa máy tính và vi điều khiển được thiết kế rõ ràng. Kiểm thử phần mềm được thực hiện để đảm bảo tính chính xác và hoạt động ổn định của giao diện. Mã nguồn của giao diện được cung cấp, bao gồm các hàm điều khiển mạch quang báo. Hướng dẫn sử dụng chi tiết được cung cấp để giúp người dùng dễ dàng sử dụng hệ thống. Tối ưu hóa được thực hiện để đảm bảo tốc độ phản hồi nhanh chóng. An ninh mạng được xem xét nếu giao diện kết nối mạng.

01/02/2025

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

Đặt vấn đề Ngày nay, khi xã hội ngày càng phát triển thì nhu cầu về truyền bá thông tin cũng ngày càng tăng. Sản xuất phát triển kéo theo việc cần nhanh chóng thông tin sản phẩm tới người tiêu dùng nhiều hơn, các cơ quan nhà nước cũng cần thông báo nhiều thông tin tới người dân hơn. Chính vì các lý do này mà nhu cầu quảng cáo và truyền bá thông tin ngày càng tăng cao. Hiện nay, có rất nhiều hình thức để có thể truyền bá thông tin, quảng cáo sản phẩm như phát tờ rơi, treo băng rôn, khẩu hiệu, dán áp phích,… Tuy nhiên, do nhu cầu quảng cáo ngày càng tăng và để đáp ứng nhu cầu đó thì các hình thức quảng cáo truyền thống như tờ rơi, áp phích, băng rôn, … hiện không còn đáp ứng tốt được nữa, vì thế quang báo điện tử ra đời.

Lý do chọn đề tài Với sự phát triển như vũ bão của khoa học công nghệ, các sản phẩm tiên tiến ngày càng xuất hiện nhiều, sản xuất phát triển mạnh kéo theo việc mọi thứ thay đổi rất nhanh chóng vì thế thông tin phải được cập nhật và thông báo tức thời là việc hết sức quan trọng trong tất cả mọi lĩnh vực. Để đáp ứng nhu cầu đó, các thiết bị sẽ được điều khiển từ xa qua thiết bị di động hoặc được điều khiển trực tiếp bằng máy tính. Việc sử dụng vi điều khiển trong quang báo điện tử có rất nhiều ưu điểm mà các phương pháp quảng cáo truyền thống không thể so sánh được như việc thay đổi thông tin một cách nhanh chóng, chính xác, thông tin hiển thị có thể chuyển động, màu sắc phong phú,…. Với nhu cầu thực tiễn nhưu vậy nên nhóm thực hiện quyết định chọn đề tài : “THIẾT KẾ VÀ THI CÔNG MẠCH QUANG BÁO SỬ DỤNG PIC18 ĐIỀU KHIỂN BẰNG TIN NHẮN ĐIỆN THOẠI VÀ MÁY TÍNH”.

Nội dung nghiên cứu Mục tiêu của đề tài này là tìm hiểu và nghiên cứu về hoạt động của module SIM900, nguyên lý hoạt động của module led ma trận 16x32, cách lập trình PIC18F4620 và cách truyền nhận dữ liệu qua máy tính thông qua chuẩn giao tiếp UART, RS232 để thi công mạch quang báo có thể điều khiển bằng tin nhắn điện thoại và bằng máy tính. Như vậy, với các nội dung đã đề ra thì đề tài sẽ bao gồm các nội dung sau: - Tìm hiểu về PIC18F4620. - Nghiên cứu về phương án điều khiển led ma trận P10 (16x32). - Tìm hiểu về module SIM900.

- Tìm hiểu các phương thức giao tiếp RS232, UART,… - Nghiên cứu lập trình cho PIC bằng trình biên dịch CCS. 1 do an - Nghiên cứu lập trình visual basic và giao tiếp máy tính. - Xây dựng sơ đồ các khối kết nối. - Thiết kế và mô phỏng mạch.

- Xây dựng lưu đồ giải thuật. - Viết chương trình mà chạy mô phỏng để sửa lỗi. - Thi công mạch. - Nạp chương trình, chạy thử và kiểm tra lỗi.

- Báo cáo đề tài tốt nghiệp. Giới hạn Trong khuôn khổ của để tài chúng em xin được giới hạn như sau: - Font chữ hiển thị trên quang báo là font chữ không dấu. - Chỉ có một hiệu ứng chữ chạy từ phải sang trái. - Sử dụng 4 bảng Led P10 ( 16x32).

Bố cục đề tài Như vậy, với các yêu cầu và mục tiêu, giớ hạn đã đề ra, đồ án sẽ được xây dựng bao gồm các chương sau:  Chƣơng 1: Tổng quan – chương này trình bày khái quát về lĩnh vực nghiên cứu, đề ra mục đích của đề tài, đưa ra các nhiệm vụ, giới hạn của đề tài và trình bày các phương pháp nghiên cứu đươc sử dụng.  Chƣơng 2: Cơ sở lý thuyết – chương này trình bày tóm lượt về cơ sở lý thuyết sẽ sử dụng trong đồ án và phương pháp để ứng dụng lý thuyết đó vào thực tiễn.  Chƣơng 3: Thiết kế phần cứng – chương này sẽ trình bày về quá trình thiết kế, xây dựng phần cứng của đồ án như : sơ đồ khối, sơ đồ nguyên lý, mạch in, …  Chƣơng 4: Thiết kế phần mềm – chương này sẽ trình bày quá trình thiết và xây dựng phần mềm của đồ án như : lưu đồ, giải thuật của chương trình, giao diện Visual Basic để điều khiển trên máy tính.  Chƣơng 5: Kết luận – chương này sẽ trình bày các kết quả đạt được, so sánh với mục tiêu đặt ra, rút kinh nghiệm, đề ra hướng phát triển của đề tài.

2 do an Chƣơng 2. Giới thiệu Khối xử lý trung tâm là khối có vai trò chính. Khối xử lý trung tâm có nhiệm vụ tiếp nhận, xử lý các dữ liệu đến và đi một cách tự động. Đề tài sử dụng PIC18F4620 để làm khối xử lý vì nó có những tín năng, ưu điểm vượt trội hơn các vi điều khiển khác.

Các vi điều khiển họ PIC có ưu điểm vượt trội hơn nhiều so với họ 8051 với nhiều module được tích hợp sẵn trong nó như : module ADC 10bit, PWM 10bit, Opam, EEPROM,… do đó chúng ta sẽ thuận lợi hơn rất nhiều trong việc thiết kế mạch mà không cần phải thiết kế thêm các module bổ trợ như trên họ vi điều khiển 8051, do đó, mạch điện khi thi công sẽ rất gọn, tiết kiệm linh kiện, hạn chế được sai xót từ các module bổ trợ. Bên cạnh các ưu điểm về phần cứng, PIC còn được hỗ trợ rất nhiều để có thể lập trình phần mềm dễ dàng hơn. Hiện nay, ngoài ngôn ngữ Assembly phức tạp, PIC còn có thể được lập trình dễ dàng hơn trên nền tảng ngôn ngữ C dễ hiểu, gần gũi với người dùng. Việc lập trình PIC được hỗ trợ rất nhiều từ các trình biên dịch sử dụng ngôn ngữ C, điển hình là trình biên dịch CCS và MIKROC.

Ngoài ra, PIC là một dòng vi điều khiển được ra đời từ rất lâu, nên có rất nhiều tài liệu cũng như diễn đàn điện tử nói về họ vi điều khiển này, vì thế nguồn tài liệu chúng ta có thể tìm được để hỗ trợ cho việc nghiên cứu là vô cùng phong phú. PIC18F4620 được sử dụng trong đề tài là một vi điều khiển phổ thông với các tính năng cơ bản dễ sử dụng:  Tập lệnh để lập trình chỉ có 35 lệnh rất dễ nhớ và dễ học, có độ dài 16bit. Mỗi lệnh đều được thực thi trong 1 chu kỳ xung clock. Tốc độ hoạt động tối đa cho phép là 64MHz.

 4 Port điều khiển vào ra với tín hiệu điều khiển độc lập, với dòng ra cao có thề kích trực tiếp các transitor mà không cần qua bộ buffer.  4 bộ định thời Timer0, Timer1, Timer2, Timer3.  1 bộ định thời Timer0 8bit có thể lập trình được.  3 bộ định thời Timer1, Timer2 và Timer3 16bit có thể hoạt động trong chế độ sleep với nguồn xung clock ngoài.

 2 bộ module CCP ( bao gồm Capture bắt giữ, Compare so sánh, PWM điều chế xung 10bit) và 1 bộ module ECCP.  1 bộ ADC với 13 kênh ADC 10bit.  2 bộ so sánh tương tự hoạt động độc lập. 3 do an  Bộ giám sát định thời Watchdog timer.

 Cổng giao tiếp song song 8bit với các tín hiệu điều khiển.  Chuẩn giao tiếp nối tiếp MSSP (SPI/I2C).  Chuẩn giao tiếp nối tiếp USART (AUSART/EUSART) với 9bit địa chỉ.  Hỗ trợ giao tiếp I2C.

 Chế độ sleep tiết kiệm năng lượng.  Chức năng bảo mật chương trình.  Nạp chương trình bằng cổng nối tiếp ICSP (In Cicuit Serial Programming) thông qua 2 chân.  Có thể hoạt động với nhiều dạng Oscillator khác nhau.

 Tần số hoạt động tối đa là 64Mhz.  Bộ nhớ Flash với khả năng ghi xóa được 100.  Bộ nhớ EEPROM với khả năng ghi xóa được 1.  Dữ liệu EEPROM có thể lưu trữ trên 40 năm.

 Khả năng tự nạp chương trình với sự điều khiển của phần mềm. Tổng quan về vi điều khiển PIC18F4620 2. Sơ đồ khối củaPIC18F4620 Hình 2. sơ đồ khối vi điều khiển PIC18F4620 2.

Sơ đồ chân và bộ nhớ 5 do an Hình 2. - Tổ chức bộ nhớ: Cấu trúc bộ nhớ của vi điều khiển PIC18F4620 bao gồm bộ nhớ chương trình (Program memory) và bộ nhớ dữ liệu (Data Memory). - Bộ nhớ chương trình:  Bộ nhớ chương trình của Vi điều khiển PIC18F4620 là bộ nhớ flash, dung lượng bộ nhớ 64 Kword (1 word = 16 bit)  Để mã hóa được địa chỉ của 64k word bộ nhớ chương trình, bộ đếm chương trình có 21bit (PC<20:0>).  Khi vi điều khiển được reset, bộ đếm chương trình sẽ chỉ đến địa chỉ 0000h (Reset vertor).

Khi có ngắt xảy ra, bộ đếm chương trình sẽ chỉ đến địa chỉ 0008h (Interrupt vertor). Bộ nhớ chương trình bao gồm bộ nhớ Stack và được địa chỉ hóa bởi bộ đếm chương trình. - Bộ nhớ dữ liệu:  Bộ nhớ dữ liệu của PIC18F4620 là bộ nhớ EEPROM được chia ra làm nhiều bank. Đối với PIC18F4620 bộ nhớ dữ liệu được chia ra làm 16 bank.

Các cổngI/O của PIC18F6420 6 do an Cổng xuất nhập (I/O Port) chính là các phương tiện mà vi điều khiển giao tiếp với bên ngoài. Sự giao tiếp, tương tác này rất đa dạng, tùy theo mục đích sử dụng của lập trình viên mà chức năng của mỗi I/O pin được thể hiện rõ ràng hơn. Một cổng xuất nhập (I/O Port ) bao gồm nhiều chân (I/O Pin). Tùy theo chức năng của vi điều khiển mà số lượng cổng, số lượng chân trong mỗi cổng có thể các nhau.

Do số lượng I/O Pin có hạn nhưng việc vi điều khiển được tích hợp nhiều module khác nhau trong đó nên ngoài chức năng xuất nhập thông thường, một số I/O Pins còn được tích hợp thêm nhiều chức năng khác được xác lập và điều khiển thông qua các thanh ghi SFR liên quan đến I/O Pin đó. Vi điều khiển 18F4620 có 5 cổng xuất nhập là : PORTA, PORTB, PORTC, PORTD và PORTE. Truyền thông nối tiếp EUART EUSART (Enhanced Universal Synchronous Asynchronous Receiver Transmitter) là một bộ truyền thông nối tiếp. Nó có tất cả các bộ phát xung clock, đăng ký thay đổi và bộ đệm dữ liệu cần thiết để thực hiện một đầu vào hay đầu ra dữ liệu nối tiếp chuyển giao độc lập của thiết bị thực hiện chương trình.

EUSART còn được gọi là giao diện giao tiếp nối tiếp nối tiếp SCI (Serial Communication Interface).

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

Bài viết "Thiết kế mạch quang báo điều khiển bằng tin nhắn với PIC18" trình bày một phương pháp hiệu quả để thiết kế mạch quang báo có khả năng điều khiển từ xa thông qua tin nhắn. Bài viết không chỉ giải thích chi tiết về cách thức hoạt động của mạch mà còn cung cấp hướng dẫn cụ thể về việc sử dụng vi điều khiển PIC18 trong quá trình thiết kế. Những lợi ích mà bài viết mang lại cho độc giả bao gồm việc hiểu rõ hơn về công nghệ điều khiển từ xa, cũng như cách áp dụng vi điều khiển trong các dự án thực tiễn.

Nếu bạn muốn mở rộng kiến thức của mình về các chủ đề liên quan, hãy tham khảo bài viết Luận văn thạc sĩ kỹ thuật viễn thông nghiên cứu và thiết kế vi mạch khuếch đại nhiễu thấp băng thông rộng 618 ghz, nơi bạn có thể tìm hiểu thêm về thiết kế vi mạch trong lĩnh vực viễn thông. Ngoài ra, bài viết Luận văn thạc sĩ kỹ thuật điện tử thiết kế hệ thống nhúng nhận dạng chữ viết tay cũng sẽ cung cấp cho bạn cái nhìn sâu sắc về ứng dụng của vi điều khiển trong nhận dạng tín hiệu. Cuối cùng, bạn có thể khám phá thêm về Luận văn thạc sĩ chuyển đổi tín hiệu vật lý và ứng dụng trong sensor, giúp bạn hiểu rõ hơn về cách chuyển đổi tín hiệu trong các ứng dụng cảm biến. Những tài liệu này sẽ giúp bạn mở rộng kiến thức và ứng dụng công nghệ trong các lĩnh vực liên quan.