ĐẠI HỌC LẠC HỒNG KHOA CƠ ĐIỆN - ĐIỆN TỬ ---BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN ĐỀ TÀI: THIẾT KẾ MÔ HÌNH ĐÈN GIAO... Với sự phát triển mạnh mẽ của kinh tế như hiện nay, giao thông đang là một b
Trang 1ĐẠI HỌC LẠC HỒNG KHOA CƠ ĐIỆN - ĐIỆN TỬ
-BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN
ĐỀ TÀI: THIẾT KẾ MÔ HÌNH ĐÈN GIAO
Trang 2MỤC LỤC
CHƯƠNG I: MỞ ĐẦU 3
1.1 Lý do chọn đề tài 3
1.2: Mục tiêu nghiên cứu 3
1.3 Phạm vi nghiên cứu 3
1.4 Kết quả đạt được 3
CHƯƠNG II: CƠ SỞ LÝ THUYẾT 4
2.1 Sơ đồ khối hệ thống 4
2.1.1 Sơ đồ khối 4
2.1.2 Nguyên lý hoạt động sơ đồ khối 4
2.1.3 Chức năng của từng khối 4
2.2 Phần cứng 5
2.2.1 Vi xử lí: STM32F401 5
2.2.2 Điện trở, biến trở: 6
2.2.3 Tụ điện 7
2.2.4 Led 7 đoạn 8
2.2.5 LED 8
2.3 Phần mềm hỗ trợ lập trình: 9
2.3.1 STM32cubeMX: 9
2.3.2 KeilC V5 9
2.4 Sơ đồ nguyên lý hoạt động 10
2.4.1 Tổng quan sơ đồ 10
2.4.2 Khối kết nối mạch STM32cubeMX 11
2.4.3 Khối đèn bên trái và đi thẳng 12
2.4.5 Khối vi xử lý 12
CHƯƠNG 3: THIẾT KẾ 13
3.1 Kết nối phần cứng 13
3.1.1 Sơ đồ kết nối 13
3.1.2 Sơ đồ giải thuật 14
3.2 Viết code cho hệ thống 15
CHƯƠNG 4: KẾT LUẬN 25
4.1 Kết quả đạt được 25
4.2 Hạn chế của đề tài 25
4.3 Hướng phát triển của đề tài 25
Trang 3CHƯƠNG I: MỞ ĐẦU
1.1 Lý do chọn đề tài
Với mỗi một dân tộc, để kinh tế phát triển thì sự phát triển về khoa hoc, kỹ thuật là thật sự cần thiết và đặc biệt quan trọng Với sự phát triển mạnh mẽ của kinh tế như hiện nay, giao thông đang là một bài toán khó đòi hỏi nhiều ngành, nhiều cấp phải quan tâm, và tìm ra các hưóng giải quyết Để làm giảm bớt những khó khăn đó cũng như làm cho việc lưu thông trên các tuyến đường được thông thoáng và giảm thiểu tại nạn, thì việc đặt các cột đèn tại các ngã và thời gian quy định cho phép đi và cấm
đi của các tuyến là đặc biệt quan trọng.
Đối với một ngã tư, tại mỗi thời điểm trong ngày thì sự lưu thông ở mỗi ngã tư la rất quan trọng Vì thế, một chương trình điều khiển đèn giao thông để ngã tư được lưu thông một cách tốt nhất là cần thiết và hết sức quan trọng.
1.2: Mục tiêu nghiên cứu
- Mục tiêu nghiên cứu của sản phẩm:
- Sử dụng để phân chia làn đường di chuyển dành cho người tham gia giao thông.
- Phương tiện lưu thông thông thoáng, an toànkhông có cản trở: ùn tắt, kẹt xe,…
- Tránh xảy ra các tai nạn giao thông ngoài ý muốn.
- An toàn và hiệu quả.
Trang 4CHƯƠNG II: CƠ SỞ LÝ THUYẾT
2.1 Sơ đồ khối hệ thống
2.1.1 Sơ đồ khối
Hình 2.1 Sơ đồ khối hệ thống 2.1.2 Nguyên lý hoạt động sơ đồ khối
- Khối nguồn cấp điện cho toàn bộ mạch, khối thời gian sẽ thu thập và cung cấp thông tin về khối trung tâm, ở đây khối trung tâm sẽ xử lý các thông tin được cung cấp từ khối thời gian rồi truyền qua khối hiển thị để hiển thị.
2.1.3 Chức năng của từng khối
• Khối xử lý trung tâm STM32f401: Sử dụng vi điều khiển STM32f401 để điều khiển toàn bộ hoạt động của mạch.
• Khối hiển thị: Sử dụng LED7 thanh để hiển thị đếm giây và led đơn hiển thị trạng thái.
• Khối nguồn: Sử dụng khối tạo ra điện áp 5VDC cung cấp cho toàn bộ linh kiện trong mạch.
• Khối thời gian thực: Đếm thời gian thực của hệ thống.
Trang 5MCU mang lại hiệu suất của lõi Cortex®-M4 với đơn vị dấu chấm động, chạy ở
84 MHz, đồng thời đạt được giá trị tiêu thụ điện năng thấp vượt trội ở các chế độ chạy và dừng.
− Hiệu suất : Ở tốc độ 84 MHz, STM32F401 mang lại hiệu suất 105 DMIPS /
285 CoreMark thực thi từ bộ nhớ Flash, với các trạng thái chờ 0 bằng Bộ tăng tốc ART của ST Các lệnh DSP và đơn vị dấu chấm động mở rộng phạm vi ứng dụng có thể định địa chỉ.
− Hiệu quả sử dụng điện: Quy trình 90 nm của ST, Bộ tăng tốc ART và khả
năng mở rộng công suất động cho phép mức tiêu thụ hiện tại ở chế độ chạy và thực thi từ bộ nhớ Flash ở mức thấp nhất là 128 µA / MHz Ở chế độ Dừng, mức tiêu thụ điện năng có thể thấp đến 9 µA.
− Tích hợp: Danh mục STM32F401 cung cấp từ 128 đến 512 Kbyte Flash, 96 Kbyte SRAM Các gói có sẵn từ 49 đến 100 chân
− 3x USARTs chạy ở tốc độ lên đến 10,5 Mbit / s,
− 4x SPI chạy ở tốc độ lên đến 42 Mbit / s,
− 3x I²C,
− 1x SDIO,
Trang 6− 1x USB 2.0 OTG tốc độ đầy đủ,
− 2x I²S song công đầy đủ lên đến 32-bit / 192KHz,
Trang 7- Biến trở là 1 dạng của điện trở có khả năng tùy chỉnh được giá trị Có rất nhiều loại biến trở có hình dạng và giá trị khác nhau như biến trở tinh chỉnh, biến trở volume,…
Hình 2.4 Biến trở
2.2.3 Tụ điện:
- Tụ điện là loại linh kiện điện tử được sử dụng phổ biến trong các mạch điện tử ngày nay Với khả năng xả áp điện áp, tụ điện thường được sử dụng để làm phẳng điện áp nguồn hay dùng để lọc nhiễu trong các mạch tần số thấp.
Hình 2.5 Tụ điện
Trang 8Hình 2.7 Led: 3 màu xanh, đỏ, vàng
Trang 92.3 Phần mềm hỗ trợ lập trình:
2.3.1 STM32cubeMX:
- STM32CubeMX là một công cụ hỗ trợ cấu hình và tạo code cho MCUSTM32 Tất cả các công việc cấu hình, nâng cấp đều được thực hiện qua giao diện đồ họa Việc này giúp cho việc lập trình trên STM32 dễ dàng hơn, rút ngắn được thời gian nghiên cứu và phát triển.
Hình 2.8 Phần mềm STM32cubeMX.
2.3.2 KeilC V5
- Hiện nay có khá nhiều trình biên dịch ngôn ngữ C cho 8051 như Mikro C, IAR,SDCC, Reads 51…µVision là môi trường phát triển tích hợp (IDE: Integrated Development Environment, trình soạn thảo ngôn ngữ C, trình biên dịch
và debug) của công ty Keil Software, và thường được gọi là Keil C
Hình 2.9 Phần mềm KeilC V5
Trang 102.4 Sơ đồ nguyên lý hoạt động.
2.4.1 Tổng quan sơ đồ:
Hình 2.10 Tổng quan sơ đồ.
Trang 112.4.2 Khối kết nối mạch STM32cubeMX.
Hình 2.11 Sơ đồ nối mạch ngõ ra cho led hiển thị.
Trang 122.4.3 Khối đèn bên trái và đi thẳng:
Hình 2.12 Khối đèn hiển thị trái sáng và đi thẳng.
2.4.5 Khối vi xử lý.
Hình 2.13 Mạch thực tế.
Trang 143.1.2 Sơ đồ giải thuật:
Trang 153.2 Viết code cho hệ thống:
#include "stm32f10x_gpio.h"
#include "stm32f10x_rcc.h"
#include "lcd16x2.h"
#include "delay.h"
//khai bao su dung chan GPIO
#define LED7SEG_A GPIO_Pin_0
#define LED7SEG_B GPIO_Pin_1
#define LED7SEG_C GPIO_Pin_2
#define LED7SEG_D GPIO_Pin_3
#define LED7SEG_E GPIO_Pin_4
#define LED7SEG_F GPIO_Pin_5
#define LED7SEG_G GPIO_Pin_6
#define LED7SEG_DP GPIO_Pin_7
#define LED1 GPIO_Pin_1
#define LED2 GPIO_Pin_2
#define LED_Do GPIO_Pin_5
#define LED_Vang GPIO_Pin_6
#define LED_Xanh GPIO_Pin_7
Trang 16#define LED_Do1 GPIO_Pin_13
#define LED_Vang1 GPIO_Pin_14
#define LED_Xanh1 GPIO_Pin_15
#define PORT_LED7SEG_CODE GPIOC //port dieu khien led 7 doan
#define PORT_LED GPIOA //port dieu khien led xanh do vang
#define PORT_LED7SEG_CODE_CLOCK RCC_APB2Periph_GPIOC
#define PORT_LED_CLOCK RCC_APB2Periph_GPIOA
uint16_t LED7SEG[10]={0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8,0x80, 0x90}; // bang ma hex led 7 doan dem tu 0 den 9
Trang 17// LCD initialization
LCD_Init();
Clock_Config(); // configuraion clock
SystemCoreClockUpdate(); // update SystemCoreClock varibaleGPIO_Config();
Trang 18LCD_Puts("NHOM 7");
for(i = 30; i > 3; i ){ // dem nguoc tu 30 ve 3//
GPIO_ResetBits(PORT_LED, LED_Do);//tat den do//
GPIO_ResetBits(PORT_LED,LED_Xanh1);// tat den xanh1
for(j = 0; j < 24; j++){ // quet led va hien thi led 7 doan
Trang 19for(i = 3; i >= 0; i ){ // 3s den vang
GPIO_ResetBits(PORT_LED, LED_Do); //tat den do
GPIO_ResetBits(PORT_LED, LED_Vang1);// tat den vang doi dien
for(j = 0; j < 24; j++){ // quet led va hien thi led
Trang 20for(i = 30; i > 3; i ){ // dem nguoc tu 30s ve 3s batden xanh
GPIO_ResetBits(PORT_LED, LED_Xanh);//
GPIO_ResetBits(PORT_LED, LED_Do1);// tat den do 1
Trang 21for(i = 3; i >= 0; i ){ // dem den vang chuyen sangdo
GPIO_ResetBits(PORT_LED, LED_Vang);// tat den vang
GPIO_ResetBits(PORT_LED, LED_Do1);// tat den do 1
Trang 22GPIO_SetBits(PORT_LED, LED_Do1); // bat den
Trang 24/* Wait till PLL is ready */
while (RCC_GetFlagStatus(RCC_FLAG_HSIRDY) == RESET){}/* Select PLL as system clock source */
RCC_SYSCLKConfig(RCC_SYSCLKSource_HSI);
/* Wait till PLL is used as system clock source */
while(RCC_GetSYSCLKSource() != 0x00) {}
}
Trang 25CHƯƠNG 4 KẾT LUẬN4.1 Kết quả đạt được :
Nhóm đã hoàn thành đề tài : “Mô hình điều khiển đèn giao thông bằng Led 7đoạn ” đảm bảo được mục tiêu của đề tài đã đặt ra:
- Thiết kế, xây dựng mô hình điều khiển đèn giao thông;
- Chế độ bình thường: hệ thống đèn giao thông hoạt động với thời gian đượccài đặt trước
- Chế độ cảnh báo: hệ thống đèn hoạt động ở chế độ cảnh báo, tất cả đèn xanh
và đỏ ở hai tuyến ngừng hoạt động, đèn vàng ở cả hai tuyến nháy với tần số 1Hz
- Chế độ ưu tiên dọc: hệ thống đèn giao thông hoạt động cho phép ưu tiêntuyến đường số 1
- Chế độ ưu tiên ngang: hệ thống đèn giao thông hoạt đồng cho phép ưu tiêntuyến đường số 2
- Lập trình màn hình cho phép điều chỉnh thời gian đèn theo mong muốn
- Điều khiển đèn giao thông ở các tuyến đường bộ
- Thiết kế tủ điều khiển hệ thống
4.2 Hạn chế của đề tài:
Do đặc thù thời gian và kiến thức còn hạn chế nên việc áp dụng kiến thức vàolàm thực tế đang còn gặp nhiều thiếu sót trong việc thiết kế sơ đồ, đấu mạch,tìm kiếm tài liệu và viết chương trình điều khiển:
- Chương trình thuật toán chưa được ngắn gọn, tối ưu
- Mô hình thiết kế còn đơn giản
4.3 Hướng phát triển của đề tài :
- Khắc phục những hạn chế của mô hình