1. Trang chủ
  2. » Giáo án - Bài giảng

BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN ĐỀ TÀI: ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN LED MA TRẬN 8X8

33 103 4

Đ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

Thông tin cơ bản

Tiêu đề Đo Nhiệt Độ Dùng IC DS18B20 Hiển Thị Trên LED Ma Trận 8X8
Tác giả Nguyễn Tấn Cường
Người hướng dẫn Th.S Ngô Kim Long
Trường học Đại học Lạc Hồng
Chuyên ngành Vi điều khiển
Thể loại báo cáo
Năm xuất bản 2021
Thành phố Đồng Nai
Định dạng
Số trang 33
Dung lượng 0,99 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Lý do chọn đề tài Ngày nay, với sự phát triển vượt bậc của khoa học kỹ thuật, cùng với sự phát triển đó thì việc vận dụng các vi điều khiển để hỗ trợ và phục vụ cho các nhu cầu về đời

Trang 1

ĐẠI HỌC LẠC HỒNG KHOA CƠ ĐIỆN - ĐIỆN TỬ

ĐỒNG NAI, 2021

Trang 2

1

MỤC LỤC Chương I: MỞ ĐẦU

Chương IV: KẾT QUẢ

1 Kết quả của chương trình

2 Kết Luận

Trang 3

2

CHƯƠNG I: MỞ ĐẦU

1 Lý do chọn đề tài

Ngày nay, với sự phát triển vượt bậc của khoa học kỹ thuật, cùng với sự phát triển

đó thì việc vận dụng các vi điều khiển để hỗ trợ và phục vụ cho các nhu cầu về đời sống hằng ngày, việc thay đổi điều chỉnh nhiệt độ rất cần thiết, theo dõi nhu cầu thiết yếu của con người về việc sử dụng các thiết bị để điều chỉnh nhiệt độ, dựa vào nhu cầu đó chúng

em đã lựa chọn nghiên cứu mô hình đo nhiệt độ và hiển thị ra Led ma trận 8x8 để giúp điều chỉnh nhiệt độ mà người sử dụng mong muốn

2 Mục tiêu nghiên cứu

- Tăng giảm nhiệt độ theo ý muốn

- Đáp ứng được nhu cầu của người dùng

Trang 4

- Lí do lựa chọn thiết bị : cần thiết cho nhu cầu cuộc sống đáp ứng được

các mục đích của con người về điều chỉnh nhiệt độ trong môi trường sinh hoạt, lao

động và làm việc

1.1 Sơ đồ khối hệ thống:

Hình 1.1: Sơ đồ khối

Trang 5

4

Giải thích nguyên lý hoạt động của các khối: khi khởi động nạp code lập trình

để hoạt động vào board(STM32F407 discovery), máy phun sương cũng trong chế độ hoạt động nhưng chưa phun sương, lúc này thì cảm biến nhiệt độ DS18B20 sẽ có

nhiệm vụ lấy nhiệt độ từ môi trường và Led Ma trận 8x32 sẽ hiển thị nhiệt độ để dự báo cho chúng ta biết Khi nhiệt độ nóng thu được từ môi trường > t0 mong muốn để

hệ thống phun sương thì hệ thống sẽ phun sương, thời gian phun sương mỗi lần là phút ( đã được thiết lập trong code) sau khi hết thời gian thiết lập, hệ thống phun sương sẽ ngắt và các trạng thái trở lại như ban đầu

1.2 Vi xử lí : STM32F407 discovery

- Kit STM32F407 Discovery hiện là loại kit được sử dụng ở rất nhiều trường đại học hiện nay trong giảng dạy vi điều khiển ARM, nếu so sánh về ngoại vi và sức mạnh của STM32 so với các dòng ARM của các hãng khác thì ở cùng 1 tầm giá, ARM của ST vượt trội về cấu hình và ngoại vi hơn rất nhiều

- Vi điều khiển chính: STM32F407VGT6 microcontroller featuring 32-bit ARM Cortex-M4F core, 1MB Flash, 192 KB RAM in an LQFP100 package

- Có led thông báo trạng thái nguồn

- Tích hợp nút nhấn cho người sử dụng và nút reset

- Có cổng Micro USB OTG

- Giá bán dao động từ 600-700 ngàn đồng

Trang 6

Cần nối chân Data của cảm biến lên mức cao VCC qua điện trở kéo 4k7 Ohm hoặc 10k

Ohm trước khi kết nối với Vi điều khiển

- Khoảng nhiệt độ đo được: -55~125°C

- Độ chính xác (sai số): ±0.5°C

Trang 7

6

- Độ phân giải: 9~12 bit (có thể thiết đặt)

- Thời gian phản hồi < 750ms

- Kiểu chân: TO-92

Hình 1.3 Cảm biến nhiệt độ DS18B20 one wire và Module cảm biến DS18B20

1.4 Module MAX7219 + LED matrix 8x32

- Module là tổ hợp 4 Led Matrix 8x8, với mỗi led Matrix được điều khiển bởi một

IC MAX7219 (tương tự như IC 74HC595) 4 IC MAX7219 được mắc nối tiếp và giao tiếp với nhau bằng chuẩn SPI giúp tiết kiệm số chân cho vi điều khiển ( chỉ sử dụng 3 chân để điều khiển ) Ngoài ra IC MAX7219 còn được tích hợp Static RAM 8x8 từ đó việc hiển thị trở nên mượt mà hơn, đồng thời Module còn có thể mở rộng thêm bằng việc mắc nối tiếp các mạch Led Matrix 8x8 MAX7219 lại với nhau

Thông số kỹ thuật :

● 4 Led Matrix 8x8 (Cathode chung) , 4 IC MAX7219

● IC giao tiếp : MAX7219

● Chuẩn giao tiếp : SPI

● Điện áp sử dụng: 5VDC

● Kích thước (cm): 6.3 x 3.5 x 1.5

● Mạch hiển thị 4 Led ma trận MAX7219 có ngõ vào tín hiệu nối tiếp, ghi dịch chuyển tín hiệu nên chỉ cần 3 GPIO để điều khiển, mạch có khả năng nối tiếp thêm nhiều mạch bằng cổng nối tiếp nên dễ dàng để mở rộng

Trang 8

7

Sơ đồ chân:

Hình 1.4.1 Sơ đồ chân module led ma trận + ic max 7219

● DIN: là chân truyền dữ liệu từ vi điều khiển đến Max7219 (chân MOSI của vi điều khiển)

● CLK: là chân cấp xung nhịp hoạt động cho Max7219 được nối với chân SCK của vi điều khiển

● CS: là chân lựa chọn hoạt động, chân này nối với bất kì một chân I/O nào của vi điều khiển

● VCC: là chân cấp nguồn: sử dụng nguồn 5VDC

● GND: kết nối với chân GND của vi điều khiển

Hình 1.4 Module led matrix MAX7219 8x32

Trang 9

- Bơm phun sương hay còn gọi là bơm tạo sương được kết hợp bởi những ưu điểm của máy bơm tự mồi và bơm hóa chất Bơm được sản xuất bằng nhiều loại vật liệu nhập khẩu

có khả năng chống ăn mòn Bơm có kích thước nhỏ gọn, dòng điện tiêu thụ thấp, áp suất cao, tiếng ồn thấp, tuổi thọ dài Với khả năng chịu dầu, chịu nhiệt, kháng axit, kháng kiềm, kháng hóa chất, chống ăn mòn… Thân máy bơm được tách ra khỏi động cơ và không có bộ phận cơ học nên không có sự ăn mòn trong thân máy bơm

Trang 10

9

- Trọng lượng: 0.56 kg

- Lực hút: 1 mét

- Lực đẩy tối đa: 35 mét

Hình 1.6.1 Động cơ phun sương Hình 1.6.2 Béc phun sương 5 đầu

Thông số kỹ thuật:

o Ống nhựa :

- Ống LDPE ( ống dẻo )

- Chất liệu: Nhựa mềm PVC

- Chất lượng: Hàng chất lượng cao

- Màu sắc:đa màu sắc

- Đặc điểm kỹ thuật: Đường kính

trong: 4mm

- Độ dày: 1,2-1.5mm

- Tính năng: Ống tưới nhỏ giọt

o Béc phun sương :

- Nhựa ABS, POM

- Số đầu tưới: 5 họng phun

- Bán kính tưới: 1m

- Lưu lượng tưới: 25-35l/h

- Áp suất làm việc: 2.5-4.5 B

Trang 11

10

1.7 Module 1 Relay Kích Mức Thấp 5VDC:

- Module 1 Relay gồm 1 rơ le hoạt động tại điện áp 5VDC, chịu được hiệu điện thế lên đến 250VAC 10A Module 1 relay kích mức thấp được thiết kế chắc chắn, khả năng cách điện tốt Trên module đã có sẵn mạch kích relay sử dụng transistor và IC cách ly quang giúp cách ly hoàn toàn mạch điều khiển (vi điều khiển) với rơ le bảo đảm vi điều khiển hoạt động ổn định

- Có sẵn header rất tiện dụng khi kết nối với vi điều khiển Mô-đun này tuân thủ các tiêu chuẩn an toàn quốc tế, khu vực đầu vào và khu vực tải có các khe cách ly

Thông số kỹ thuật

- Mức logic : 0V (GND)

- Điều khiển đóng ngắt điện DC hoặc AC, bạn có thể điều khiển tải AC 220 V 10A

- Có tiếp điểm thường mở và thường đóng:

- NO : thường mở (khi kích tiếp điểm đóng lại)

- COM : chung

- NC : Thường đóng (khi kích tiếp điểm mở ra)

- In là chân tín hiệu điều khiển

- VCC, GND là nguồn nuôi Relay

Hình 1.7 Module 1 Relay Kích Mức Thấp 5VDC

Trang 12

Hình 2.1 Phần mềm STM32cube MX

2.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.2 Phần mềm Keilc V5

Trang 13

12

CHƯƠNG III: THIẾT KẾ BÀI TOÁN

1 Bài toán đặt ra

- Đo nhiệt độ dùng IC DS18B20 hiển thị trên led ma trận 8x8 với yêu cầu: Nếu nhiệt

độ nóng > t0 mong muốn, thì điều khiển mở hệ thống phun sương, thời gian phun sương mỗi lần là phút (t0 và xx phút do người dùng thiết lập bằng nút nhấn)

- Led Matrix + IC MAX7219(DIN-CS-CLK) ————— PA2-PA3-PA4

- Motor +Relay 5v ————— PE1

Hình 2.1: Sơ đồ kết nối

Trang 14

13

Hình 2.2 Khai báo led + IC MAX7219, Nút nhấn, DS18B20

Hình 2.3 Khai báo Motor thông qua Relay kích mức thấp 5VDC

Trang 16

static void MX_GPIO_Init(void);

static void MX_TIM2_Init(void);

void button(void);

void caidatnhietdo(void);

void caidatphut(void);

int main(void)

Trang 20

//button down minute

Trang 25

/** Initializes the RCC Oscillators according to the specified parameters

* in the RCC_OscInitTypeDef structure

Trang 26

RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4;

RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2;

if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5) != HAL_OK)

Trang 27

26

/* USER CODE BEGIN TIM2_Init 0 */

/* USER CODE END TIM2_Init 0 */

TIM_ClockConfigTypeDef sClockSourceConfig = {0};

TIM_MasterConfigTypeDef sMasterConfig = {0};

/* USER CODE BEGIN TIM2_Init 1 */

/* USER CODE END TIM2_Init 1 */

Trang 28

{

Error_Handler();

}

/* USER CODE BEGIN TIM2_Init 2 */

/* USER CODE END TIM2_Init 2 */

Trang 29

/*Configure GPIO pin Output Level */

HAL_GPIO_WritePin(GPIOE, GPIO_PIN_1, GPIO_PIN_RESET);

/*Configure GPIO pins : PA2 PA3 PA4 */

Trang 30

29

GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_15; GPIO_InitStruct.Mode = GPIO_MODE_INPUT;

/* USER CODE BEGIN 4 */

/* USER CODE END 4 */

Trang 31

30

{

/* USER CODE BEGIN Error_Handler_Debug */

/* User can add his own implementation to report the HAL error return state */ disable_irq();

* @brief Reports the name of the source file and the source line number

* where the assert_param error has occurred

* @param file: pointer to the source file name

* @param line: assert_param error line source number

* @retval None

*/

void assert_failed(uint8_t *file, uint32_t line)

{

/* USER CODE BEGIN 6 */

/* User can add his own implementation to report the file name and line number, ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */

Trang 32

- Mạch hoạt động ổn định không xuất hiện lỗi

- Đạt được yêu cầu đề bài nêu ra

- Tăng giảm nhiệt độ theo ý muốn

- Đáp ứng được nhu cầu của người dùng

2 Kết Luận:

Đề tài " Đo nhiệt độ dùng DS18B20 hiển thị led ma trận 8x8" là kết quả của quá trình tổng hợp kiến thức về bộ xử lý điều khiển STM32F được học tại lớp Ngoài ra, trong quá trình hoàn thành mô hình giúp thành viên trong nhóm hoàn thiện nhiều kĩ thuật và thu hoạch được nhiều kỹ năng và kiến thức bên ngoài hơn Rõ ràng nhất cho thấy :

Về phần cứng : hoàn thiện kỹ năng quan sát và đấu nối các thiết bị

Về phần mềm : hoàn thiện thiếu sót trong quá trình tạo code, hiểu thêm về STM32F hoạt động như thế nào và biết thêm chức năng mới

Về phần kỹ năng : hoàn thiện kỹ năng viết báo cáo, thuyết trình và cách thức hoàn thành bài báo cáo hiệu quả, nâng cao kỹ năng hoạt động nhóm

Trang 33

32

Tài liệu tham khảo

1 STM32 giao tiếp với DS18B20:

https://vidieukhien.xyz/2018/05/14/stm32f4-giao-tiep-voi-ds18b20/

2 Lập trình STM32 đọc nhiệt độ với DS18b20 giao tiếp Onewire:

https://khuenguyencreator.com/lap-trinh-stm32-doc-nhiet-do-voi-ds18b20/

Ngày đăng: 08/02/2022, 13:50

HÌNH ẢNH LIÊN QUAN

1.1  Sơ đồ khối hệ thống: - BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN  ĐỀ TÀI:  ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN  LED MA TRẬN 8X8
1.1 Sơ đồ khối hệ thống: (Trang 4)
Hình 1.2 Kit STM 32F407 DISCOVERY - BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN  ĐỀ TÀI:  ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN  LED MA TRẬN 8X8
Hình 1.2 Kit STM 32F407 DISCOVERY (Trang 6)
Sơ đồ chân: - BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN  ĐỀ TÀI:  ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN  LED MA TRẬN 8X8
Sơ đồ ch ân: (Trang 8)
Hình 1.4.1 Sơ đồ chân module led ma trận + ic max 7219 - BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN  ĐỀ TÀI:  ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN  LED MA TRẬN 8X8
Hình 1.4.1 Sơ đồ chân module led ma trận + ic max 7219 (Trang 8)
Hình 1.6.1 Động cơ phun sương                              Hình 1.6.2 Béc phun sương 5 đầu - BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN  ĐỀ TÀI:  ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN  LED MA TRẬN 8X8
Hình 1.6.1 Động cơ phun sương Hình 1.6.2 Béc phun sương 5 đầu (Trang 10)
Hình 1.7 Module 1 Relay Kích Mức Thấp 5VDC - BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN  ĐỀ TÀI:  ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN  LED MA TRẬN 8X8
Hình 1.7 Module 1 Relay Kích Mức Thấp 5VDC (Trang 11)
Hình 2.1 Phần mềm STM32cube MX  2.2 KeilC V5 : - BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN  ĐỀ TÀI:  ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN  LED MA TRẬN 8X8
Hình 2.1 Phần mềm STM32cube MX 2.2 KeilC V5 : (Trang 12)
Hình 2.1: Sơ đồ kết nối - BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN  ĐỀ TÀI:  ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN  LED MA TRẬN 8X8
Hình 2.1 Sơ đồ kết nối (Trang 13)
Hình 2.2 Khai báo led + IC MAX7219, Nút nhấn, DS18B20. - BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN  ĐỀ TÀI:  ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN  LED MA TRẬN 8X8
Hình 2.2 Khai báo led + IC MAX7219, Nút nhấn, DS18B20 (Trang 14)
Hình 2.3 Khai báo Motor thông qua Relay kích mức thấp 5VDC. - BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN  ĐỀ TÀI:  ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN  LED MA TRẬN 8X8
Hình 2.3 Khai báo Motor thông qua Relay kích mức thấp 5VDC (Trang 14)
Hình 3.1 Mạch thực tế đo nhiệt độ dùng DS18B20 hiển thị led ma trận - BÁO CÁO MÔN HỌC VI ĐIỀU KHIỂN  ĐỀ TÀI:  ĐO NHIỆT ĐỘ DÙNG IC DS18B20 HIỂN THỊ TRÊN  LED MA TRẬN 8X8
Hình 3.1 Mạch thực tế đo nhiệt độ dùng DS18B20 hiển thị led ma trận (Trang 15)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w