Skip to Content
YolobitCITYBIT7. Bài 5: Hệ thống cảnh báo tốc độ

7. Bài 5: Hệ thống cảnh báo tốc độ

Mục tiêu

Trong thành phố, di chuyển vượt tốc độ là hành vi vi phạm. Vì vậy, thiết bị đo tốc độ rất cần thiết để kiểm tra tốc độ chạy của xe. Nếu tốc độ của xe vượt mức quy định, hệ thống sẽ hiển thị số lần vi phạm và giá trị vận tốc lớn nhất của xe lên màn hình LCD.

Kết nối

  • Cảm biến khoảng cách (P3/P6) bai 5.1

    |

  • Màn hình LCD OLED (I2C1) bai 5.2

    |

  • Kết nối bai 5.3

    |

Lắp ráp mô hình

bai 5.4

| bai 5.5

|

Giới thiệu khối lệnh

bai 5.6

|

Cách tính vận tốc

bai 5.7

Để tính vận tốc xe, chúng ta sẽ sử dụng công thức sau:

v = S / t

Trong đó:

  • v là vận tốc
  • S là quãng đường
  • t là thời gian

Ta sẽ tiến hành đo khoảng cách đến xe trong 2 mốc thời gian khác nhau, từ đó tính ra quãng đường xe đi được:

S = Khoảng cách 1 - Khoảng cách 2

Thời gian di chuyển = thời gian giữa 2 mốc thời gian bai 5.8

Viết chương trình

  1. Tạo 3 biến để chứa giá trị tốc độ, khoảng cách 1 và khoảng cách 2. Gán giá trị 0 cho các biến này bai 5.9

    |

  2. Khởi tạo cảm biến khoảng cách tại cổng P10/P13 và màn hình LCD: bai 5.10

    |

  3. Nếu phát hiện có xe đến gần (khoảng cách < 40cm), tiến hành đo khoảng cách tại 2 thời điểm cách nhau 1 giây và lưu giá trị vào biến tương ứng: bai 5.11

    |

  4. Lồng điều kiện nếu xe đang tiến lại gần (khoảng cách 2 < khoảng cách 1) vào bên trong: bai 5.12

    |

  5. Áp dụng công thức tính vận tốc vào và gán giá trị tính được vào biến tốc độ (thời gian là 1 giây): bai 5.13

    |

  6. Nếu tốc độ quá hạn mức quy định (15), ta tiến hành bật đèn LED thành màu đỏ và xóa màn hình LCD: bai 5.14

    |

  7. In dòng chữ “Vuot qua toc do” và giá trị tốc độ lên màn hình LCD (lấy thông tin từ biến tốc độ): bai 5.15

    |

  8. Lặp lại 2 nốt nhạc A5 và E3 liên tục 3 lần để báo hiệu: bai 5.16

    |

  9. Nếu tốc độ không vượt mức 15, bật đèn LED thành màu xanh và hiển thị giá trị tốc độ lên màn hình LCD bai 5.17

    |

  10. Tạm dừng chương trình trong 2 giây để xe rời khỏi bai 5.18

    |

  11. Tạm dừng toàn bộ chương trình trong 50ms ở cuối chương trình bai 5.19

    |

Chương trình mẫu

Last updated on

OhStem AI Assistant

Hỏi bất kỳ điều gì về OhStem

OhStem

Xin chào!

Tôi là trợ lý AI của OhStem. Hãy hỏi tôi bất kỳ câu hỏi nào về sản phẩm, lập trình, hoặc hướng dẫn sử dụng.