1. Trang chủ
  2. » Tất cả

Bai Giang thuc hanh vi dieu khien va vi xu ly_Binh

327 6 0

Đ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

Định dạng
Số trang 327
Dung lượng 8,69 MB

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

Nội dung

Sơ đồ nguyên lý điện tử Hình 1.5: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt một LED đơn trên cổng P13 của Arduino Nguyên lý hoạt động Nhiệm vụ trong bài tập này là điều khiển bật/

Trang 1

BỘ MÔN CÔNG NGHỆ Ô TÔ VÀ HỆ THỐNG CẢM BIẾN

BÀI GIẢNG THỰC HÀNH VI XỬ LÝ VÀ VI ĐIỀU KHIỂN

Trang 2

MỤC LỤC

DANH MỤC HÌNH VẼ 8

PHẦN I: THỰC HÀNH BÀI THỰC HÀNH LẬP TRÌNH 19

TRÊN NỀN TẢNG ARDUINO 19

A MỤC ĐÍCH CHUNG 19

B CƠ SỞ LÝ THUYẾT 19

BÀI 1: LẬP TRÌNH I/O HỆ THỐNG 16 LED ĐỎ ĐƠN 20

NỘI DUNG THỰC HÀNH 20

1.1 Thiết bị sử dụng 20

1.1.1 Arduino 20

1.1.2 Hệ thống LED đơn 20

1.1.3 Công tắc và chiết áp 21

1.2 Nội dung chuẩn bị 22

1.3 Các bài tập thí nghiệm 23

1.3.1 Lập trình bật/tắt từng LED và toàn bộ hệ thống LED đỏ đơn theo chương trình 23

1.3.2 Lập trình bật/tắt từng LED và toàn bộ hệ thống LED đỏ đơn bằng công tắc 30

1.3.3 Lập trình bật/tắt hệ thống LED đỏ đơn theo thời gian với một số hiệu ứng 36

1.3.4 Lập trình điều chỉnh độ sáng tối của từng LED và toàn hệ thống LED đỏ đơn 44

BÀI 2: LẬP TRÌNH ĐIỀU KHIỂN HỆ THỐNG 4 LED 7 ĐOẠN 51

2.1 Thiết bị sử dụng 51

2.1.1 Arduino 51

2.1.2 LED 7 đoạn 51

2.1.3 IC 74LS14 51

2.1.4 IC 74LS138 52

Trang 3

2.1.5 Bàn phím 3x4 52

2.2 Nội dung chuẩn bị 53

2.3 Các bài tập thí nghiệm 54

2.3.1 Lập trình bật/tắt từng LED 7 đoạn và toàn bộ hệ thống 4 LED 7 đoạn 54

2.3.2 Lập trình hiển thị số trên từng LED 7 đoạn và toàn bộ hệ thống LED 7 đoạn từ bàn phím 66

2.3.3 Lập trình hiển thị số trên LED 7 đoạn theo thời gian và tự động đếm xuôi ngược 82

BÀI 3: HIỂN THỊ DỮ LIỆU TRÊN LCD 95

3.1 Thiết bị sử dụng trong Module IA03 95

3.1.1 Arduino 95

3.1.2 LCD 95

3.1.3 Bàn phím 3x4 96

3.1.4 Cảm biến nhiệt độ 96

3.2 Nội dung chuẩn bị 96

3.3 Các bài tập thí nghiệm 97

3.3.1 Lập trình hiển thị dữ liệu lên màn hình LCD 97

3.3.2 Lập trình hiển thị dữ liệu lên màn hình LCD từ bàn phím 104

3.3.3 Lập trình thu thập giá trị nhiệt độ từ cảm biến nhiệt độ hiển thị lên màn hình LCD 116

BÀI 4: ĐIỀU KHIỂN ĐỘNG CƠ MỘT CHIỀU 121

4.1 Thiết bị sử dụng trong Module IA04 121

4.1.1 Arduino 121

4.1.2 Module L298 121

4.1.2 Động cơ một chiều 122

Trang 4

4.2 Nội dung chuẩn bị 122

4.3 Các bài tập thí nghiệm 123

4.3.1 Lập trình bật/tắt hệ thống 2 động cơ một chiều bằng công tắc 123

4.3.2 Lập trình thay đổi chiều quay của từng động cơ một chiều bằng công tắc 132

4.3.3 Lập trình thay đổi tốc độ và chiều quay của hệ thống 2 động cơ một chiều 143

BÀI 5: LẬP TRÌNH SA BÀN MÔ HÌNH ĐÈN GIAO THÔNG 155

5.1 Thiết bị sử dụng trong sa bàn mô hình đèn giao thông 155

5.1.1 Arduino 155

5.1.2.LED và LED 7 đoạn 155

5.1.3 Module L298 155

5.1.4 Động cơ một chiều 155

5.2 Nội dung chuẩn bị 155

5.3 Các bài tập thí nghiệm 156

5.3.1 Lập trình điều khiển bật/tắt tự động hệ thống LED đơn xanh, đỏ, vàng trên sa bàn mô hình đèn giao thông 156

5.3.2 Lập trình điều khiển bật/tắt tự động hệ thống LED đơn (xanh, đỏ, vàng) theo thời gian hiển thị trên hệ thống LED 7 đoạn trên sa bàn mô hình đèn giao thông 161

5.3.3 Lập trình điều khiển tự động bật/tắt, tốc độ động cơ theo thời gian trên sa bàn mô hình đèn giao thông 169

5.3.4 Lập trình cho hệ thống đèn giao thông trên sa bàn mô hình đèn giao thông 177

PHẦN II: THỰC HÀNH BÀI THỰC HÀNH LẬP TRÌNH 187

TRÊN NỀN TẢNG ZOLERTIA 187

A MỤC ĐÍCH CHUNG 187

B CƠ SỞ LÝ THUYẾT 187

BÀI 6: LẬP TRÌNH I/O VỚI HỆ THỐNG 16 LED 188

Trang 5

TRÊN NỀN TẢNG ZOLERTIA 188

6.1 Thiết bị sử dụng 188

6.1.1 Zolertia 188

6.1.2 Hệ thống LED đỏ 189

6.2 Nội dung chuẩn bị 189

6.3 Các bài tập thí nghiệm 190

BÀI 7: LẬP TRÌNH CHO CẢM BIẾN ÁNH SÁNG, NHIỆT ĐỘ 224

VÀ ĐIỀU KHIỂN THIẾT BỊ ĐIỆN 224

7.1 Thiết bị sử dụng 224

7.1.1 Zorlertia 225

7.1.2 Cảm biến ánh sáng 225

7.1.3 Cảm biến nhiệt độ LM35 225

7.1.4 Rơle 225

7.2 Nội dung chuẩn bị 225

7.3 Các bài tập thí nghiệm 226

7.3.1 Lập trình thu thập dữ liệu từ cảm biến nhiệt độ và hiển thị lên máy tính 226

7.3.2 Lập trình thu thập dữ liệu từ cảm biến ánh sáng và hiển thị lên máy tính 231

7.3.3 Lập trình điều khiển bật/tắt 2 thiết bị điện từ nút bấm 235

7.3.4 Lập trình điều khiển 2 thiết bị điện dựa trên ngưỡng của nhiệt độ và ánh sáng246 BÀI 8: NGẮT VÀ CẢM BIẾN CHUYỂN ĐỘNG 264

8.1 Thiết bị sử dụng 264

8.1.1 Zolertia 265

8.1.2 Cảm biến chuyển động 265

8.2 Các nội dung chuẩn bị 265

Trang 6

8.3 Các bài tập thí nghiệm 266

8.3.1 Lập trình tác động ngắt từ nút bấm để hệ thống LED đơn thay đổi chế độ chạy 266

8.3.2 Lập trình kết nối với cảm biến chuyển động và thông báo tới máy tính 279

8.3.3 Lập trình kết nối với cảm biến chuyển động và điều khiển hệ thống điện tương ứng (điện, còi báo động) 284

BÀI 9: ĐO TIÊU THỤ ĐIỆN NĂNG CỦA THIẾT BỊ ĐIỆN 299

9.1 Thiết bị sử dụng 299

9.1.1 Zolertia 299

9.1.2 Cảm biến dòng điện 299

9.2 Nội dung chuẩn bị 300

9.3 Các bài thí nghiệm 301

9.3.1 Lập trình đo dòng điện 1 thiết bị điện 301

9.3.2 Lập trình đo dòng điện 2 thiết bị điện 307

BÀI 10: BÀI THÍ NGHIỆM TÍCH HỢP SỬ DỤNG MỘT SỐ THÀNH PHẦN TRÊN MODULE IZ02, IZ03 VÀ IZ04 315

10.1 Thiết bị sử dụng 315

10.1.1 Zolertia 315

10.1.2 Cảm biến nhiệt độ, ánh sáng, chuyển động, dòng điện 315

10.2 Các nội dung chuẩn bị 315

10.3 Các bài thí nghiệm 316

10.3.1 Lập trình tích hợp ba cảm biến nhiệt độ, ánh sáng và chuyển động để điều khiển còi báo động và từng thiết bị điện dựa theo điều kiện khác nhau và đồng thời đo dòng tiêu thụ của thiết bị điện tương ứng 316

TÀI LIỆU THAM KHẢO 328

Trang 8

DANH MỤC HÌNH VẼ

Hình 1.1: Arduino Uno 20

Hình 1.2: Đèn LED đỏ 21

Hình 1.3: Ký hiệu chiết áp 21

Hình 1.4: Cấu tạo chiết áp 21

Hình 1.5: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt một LED đơn 23

trên cổng P13 của Arduino 23

Hình 1.6: Lưu đồ thuật toán chương trình bật/tắt 01 LED đơn trên cổng P13 24

Hình 1.7: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm bật/tắt một LED đơn trên cổng P13 của Arduino 24

Hình 1.8: Biên dịch chương trình 25

Hình 1.9: Nạp chương trình điều khiển vào Arduino 26

Hình 1.10: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt 08 LED đơn 27

trên cổng P0-P7 của Arduino 27

Hình 1.11: Lưu đồ thuật toán chương trình bật/tắt 08 LED đơn trên cổng P0-P7 28

Hình 1.12: Sơ đồ đấu nối hoàn chình bài thí nghiệm bật/tắt 08 LED đơn trên cổng P0-P7 của Arduino 29

Hình 1.13: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt một LED đơn bằng công tắc 30

Hình 1.14: Lưu đồ thuật toán chương trình bật/tắt 01 LED đơn 31

trên cổng P7 sử dụng công tắc 31

Hình 1.15: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm bật/tắt 1 LED đơn 32

bằng một công tắc 32

Hình 1.16: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt 08 LED đơn bằng một công tắc 33

Hình 1.17: Lưu đồ thuật toán chương trình bật/tắt 08 LED đơn trên cổng P0-P7 sử dụng công tắc tại cổng A2 34

Hình 1.18: Sơ đổ đấu nối hoàn chỉnh bài thí nghiệm bật/tắt 08 LED đơn bằng một công tắc 35

Trang 9

Hình 1.19: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt 08 LED đơn theo thời gian

với một số hiệu ứng 37

Hình 1.20: Lưu đồ thuật toán chương trình bật/tắt 08 LED đơn trên cổng P0-P7 với một số hiệu ứng 37

Hình 1.21: Sơ đồ đấu nối hoàn chình bài thí nghiệm bật/tắt 08 LED đơn theo thời gian với mốt số hiệu ứng 38

Hình 1.22: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt 16 LED đơn sáng theo hiệu ứng chạy vòng 40

Hình 1.23: Lưu đồ thuật toán chương trình bật/tắt 16 LED đơn trên cổng P0-P13, A0-A1 theo hiệu ứng chạy vòng 41

Hình 1.24: Sơ đồ kết nối hoàn chỉnh bài thí nghiệm bât/tắt 16 LED đơn sáng theo hiệu ứng chạy vòng 42

Hình 1.25: Sơ đồ nguyên lý điện tử bài thí nghiệm điều chỉnh độ sáng tối 44

của một LED đơn tại cổng P9 của Arduino 44

Hình 1.26: Lưu đồ thuật toán chương trình điều chỉnh cường độ sáng của 01 LED đơn trên cổng P9 45

Hình 1.27: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm điều chỉnh độ sáng tối của một LED đơn bằng chương trình 46

Hình 1.28: Sơ đồ nguyên lý điện tử bài thí nghiệm điều chỉnh độ sáng tối 47

của 2 LED đơn bằng 2 chiết áp 47

Hình 1.29: Lưu đồ thuật toán chương trình điều chỉnh cường độ sáng của 02 LED đơn trên cổng P9-P10 sử dụng 02 chiết áp 48

Hình 1.30: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm điều chỉnh độ sáng tối 49

của 02 LED đơn bằng 02 chiết áp 49

Hình 2.1: Sơ đồ nguyên lý LED 7 đoạn 51

Hình 2.2: Sơ đồ nguyên lý IC 74LS14 51

Hình 2.3: Sơ đồ nguyên lý IC74LS138 52

Hình 2.4: Cấu tạo bàn phím 3x4 52

Hình 2.5: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình hiển thị một số bất kỳ trên LED 7 đoạn số 1 54

Trang 10

Hình 2.6: Lưu đồ thuật toán chương trình hiển thị một số bất kỳ trên LED 7 đoạn số 1

56

Hình 2.7: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm lập trình hiển thị một số bất kỳ trên LED 7 đoạn số 1 57

Hình 2.8: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình hiển thị số bất kỳ trên 2 LED 7 đoạn số 1 và 2 60

Hình 2.9: Lưu đồ thuật toán chương trình hiển thị số bất kỳ trên LED 7 đoạn 62

số 1 và số 2 62

Hình 2.10: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm lập trình hiển thị một số bất kỳ trên LED 7 đoạn số 1 và 2 64

Hình 2.11: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình hiển thị một số bất kỳ trên LED 7 đoạn số 1 bằng bàn phím 67

Hình 2.12: Lưu đồ thuật toán chương trình hiển thị số bất kỳ trên LED 7 đoạn số 1bằng bàn phím 68

Hình 2.13: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm lập trình hiển thị một số bất kỳ trên LED 7 đoạn số 1 bằng bàn phím 70

Hình 2.14: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình hiển thị trên hệ thống 4 LED 7 đoạn bằng bàn phím 74

Hình 2.15: Lưu đồ thuật toán chương trình bật và hiện thị trên LED 7 đoạn số 1 76

Hình 2.16: Lưu đồ thuật toán chương trình bật và hiện thị trên LED 7 đoạn số 2 76

Hình 2.17: Lưu đồ thuật toán chương trình bật và hiện thị trên LED 7 đoạn số 3 76

Hình 2.18: Lưu đồ thuật toán chương trình bật và hiện thị trên LED 7 đoạn số 4 76

Hình 2.19: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm lập trình hiển thị trên hệ thống 4 LED 7 đoạn bằng bàn phím 78

Hình 2.20: Sơ đồ nguyên lý điện tử bài thì nghiệm lập trình hiển thị số 5, 6, 7, 8 theo thứ tự tăng dần rồi dừng lại khi đến số 8 trên LED 7 đoạn số 1 83

Hình 2.21: Lưu đồ thuật toán chương trình hiển thị số 5, 6, 7, 8 theo thứ tự tăng dần rồi dừng lại khi đến số 8 trên LED 7 đoạn số 1 84

Hình 2.22: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm lập trình hiển thị số 5, 6, 7, 8 theo thứ tự tăng dần rồi dừng lại khi đến số 8 trên LED 7 đoạn số 1 86

Trang 11

Hình 2.23: Sơ đồ nguyên lý điện tử bài thí nghiệp lập trình hiển thị số 0 đến số 9 theo

thứ tự tăng dần và lặp lại trên LED 7 đoạn số 2 89

Hình 2.24: Lưu đồ thuật toán chương trình hiển thị số 0 đến 9 theo kiểu tăng dần và lặp lại trên LED 7 đoạn số 2 90

Hình 2.25: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm lập trình hiển thị số 0 đến số 9 theo thứ tự tăng dần và lặp lại trên LED 7 đoạn số 2 92

Hình 3.1: Kết nối LCD với vi điều khiển 95

Hình 3.2: Cấu tạo bàn phím 3x4 96

Hình 3.3: Sơ đồ khối cảm biến nhiệt độ DS18B20 96

Hình 3.4: Sơ đồ nguyên lý điện tử bài tập thí nghiệm lập trình hiển thị chữ “Xin chao” lên màn hình LCD từ chương trình điều khiển của Arduino 98

Hình 3.5: Lưu đồ thuật toán bài thí nghiệm hiển thị “Xin Chao”lên LCD 99

Hình 3.6: Sơ đồ đấu nối bài tập Lập trình hiển thị đoạn chữ: “Xin chao” 100

lên màn hình LCD 100

Hình 3.7: Sơ đồ nguyên lý bài thực hành hiển thị “Xin chao” và “Chuc mung” 101

Hình 3.8: Lưu đồ thuật toán bài thí nghiệm hiển thị “Xin chao” và “Chuc mung” 102

Hình 3.9: Sơ đồ đấu nối bài tập lập trình hiển thị đoạn chữ:“Xin chao” và “Chuc mung” lên màn hình LCD 103

Hình 3.10: Sơ đồ nguyên lý bài thí nghiệm hiển thị số lên màn hình LCD từ bàn phím 105

Hình 3.11: Lưu đồ thuật toán bài thí nghiệm hiển thị số lên màn hình LCD từ bàn phím 106

Hình 3.12: Sơ đồ đấu nối bài tập lập trình hiển thị số lên màn hình LCD từ bàn phím 108

Hình 3.12: Sơ đồ nguyên lý bài thí nghiệm nhập mật khẩu số từ bàn phím, nếu mật khẩu đúng hiển thị đoạn chữ: “Welcome”, nếu sai thì hiển thị đoạn chữ: “Error, Check again”, và quay về màn hình ban đầu để nhập lại mật khẩu 110

Hình 3.13: Lưu đồ thuật toán bài thí nghiệm kiểm tra mật khẩu nhập vào từ bàn phím 111

Trang 12

Hình 3.14: Sơ đồ đấu nối bài tập lập trình nhập mật khẩu số từ bàn phím, nếu mật khẩu đúng hiển thị đoạn chữ : “Welcome”nếu sai thì hiển thị đoạn chữ: “Error,

Check again” và quay về màn hình ban đầu để kiểm tra mật khẩu 113

Hình 3.15: Sơ đồ nguyên lý bài thí nghiệm thu thập giá trị nhiệt độ từ cảm biến nhiệt độ hiển thị lên màn hình LCD 116

Hình 3.16: Lưu đồ thuật toán bài thí nghiệm thu thập giá trị nhiệt độ từ cảm biến nhiệt độ hiểnthị lên màn hình LCD 117

Hình 3.17: Sơ đồ đấu nối bài thí nghiệm lập trình thu thập giá trị từ cảm biến nhiệt độ hiển thị lên màn hình LCD 118

Hình 4.1: Sơ đồ nguyên lý IC cầu H L298 121

Hình 4.2: Sơ đồ cấu tạo động cơ một chiều 122

Hình 4.3: Sơ đồ nguyên lý bài tập lập trình bật/tắt động cơ một chiều số 1 124

bằng công tắc qua cổng P6 của Arduino 124

Hình 4.4: Lưu đồ thuật toán bài tập lập trình bật/tắt động cơ một chiều số 1 125

bằng công tắc qua cổng P6 của Arduino 125

Hình 4.5: Sơ đồ đấu nối bài tập lập trình bật/tắt động cơ một chiều số 1 126

bằng công tắc qua cổng P6 của Arduino 126

Hình 4.6: Sơ đồ nguyên lý bài tập lập trình bật/tắt hệ thống 2 động cơ một chiều bằng một công tắc qua cổng P6 của Arduino 128

Hình 4.7: Lưu đồ thuật toán bài tập lập trình bật/tắt hệ thống 2 động cơ một chiều bằng một công tắc qua cổng P6 của Arduino 129

Hình 4.8: Sơ đồ đấu nối bài tập lập trình bật/tắt hệ thống 2 động cơ một chiều bằn một công tắc qua cổng P6 của Arduino 130

Hình 4.9: Sơ đồ nguyên lý bài tập lập trình bật/tắt, thay đổi chiều quay của động cơ một chiều số 1 bằng 2 công tắc qua cổng P6, P7 của Arduino 132

Hình 4.10: Lưu đồ thuật toán bài tập lập trình bật/tắt, thay đổi chiều quay của động cơ một chiều số 1 bằng 2 công tắc qua cổng P6, P7 của Arduino 134

Hình 4.11: Sơ đồ đấu nối bài tập lập trình bật/tắt, thay đổi chiều quay của động cơ một chiều số 1 bằng 2 công tắc qua cổng P6, P7 của Arduino 135

Hình 4.12: Sơ đồ nguyên lý bài tập lập trình bật/tắt, thay đổi chiều quay của hệ thống 2 động cơ một chiều bằng 2 công tắc qua cổng P6, P7 của Arduino 138

Trang 13

Hình 4.13:Lưu đồ thuật toán bài tập lập trình bật/tắt, thay đổi chiều quay của hệ thống 2 động cơ một chiều bằng 2 công tắc qua cổng P6, P7 của Arduino 140 Hình 4.14: Sơ đồ đấu nối bài tập lập trình bật/tắt, thay đổi chiều quay của hệ thống 2 động cơ một chiều bằng 2 công tắc qua cổng P6, P7 của Arduino 141 Hình 4.15: Sơ đồ nguyên lý bài tập lập trình bật/tắt, thay đổi chiều quay và tốc độ của động cơ một chiều số một bằng hai công tắc và một chiết áp qua cổng P6, P7 và A0 của Arduino 144 Hình 4.16:Lưu đồ thuật toán bài tập lập trình bật/tắt, thay đổi chiều quay và tốc độ của động cơ một chiều số một bằng hai công tắc và một chiết áp qua cổng P6, P7 và A0 của Arduino 146 Hình 4.17: Sơ đồ đấu nối bài tập lập trình bật/tắt, thay đổi chiều quay và tốc độ của động cơ một chiều số một bằng hai công tắc và một chiết áp qua cổng P6, P7 và A0 của Arduino 147 Hình 4.18: Sơ đồ nguyên lý bài tập lập trình bật/tắt, thay đổi chiều quay và tốc độ của hệ thống hai động cơ một chiều bằng hai công tắc và một chiết áp 149 Hình 4.19: Lưu đồ thuật toán bài tập lập trình bật/tắt, thay đổi chiều quay và tốc độ của hệ thống hai động cơ một chiều bằng hai công tắc và một chiết áp qua cổng P6, P7 và A0 của Arduino 151 Hình 4.20: Sơ đồ đấu nối bài tập lập trình bật/tắt, thay đổi chiều quay và tốc độ của

hệ thống hai động cơ một chiều bằng hai công tắc và một chiết áp qua cổng P6, P7 và A0 của Arduino 152 Hình 5.1: Sơ đồ nguyên lý bài thí nghiệm điều khiển bật/ tắt tự động hệ thống LED đơn (xanh, đỏ, vàntrên sa bàn đèn giao thông 156 Hình 5.2: Lưu đồ thuật toán bài tập điều khiển bật/ tắt tự động hệ thống LED đơn (xanh, đỏ, vàntrên sa bàn mô hình đèn giao thông 157 Hình 5.3: Sơ đồ đấu nối bài tập lập trình điều khiển bật/tắt tự động hệ thống LED đơn (xanh, đỏ, vàntrên sa bàn mô hình đèn giao thông 159 Hình 5.4: Sơ đồ nguyên lý bài thí nghiệm điều khiển bật/ tắt tự động hệ thống LED đơn (xanh, đỏ, vàntheo thời gian trên sa bàn đèn giao thông 162 Hình 5.5: Lưu đồ thuật toán chương trình khi bật đèn xanh ở trục đèn chính 164

Trang 14

Hình 5.7: Lưu đồ thuật toán chương trình khi bật đèn đỏ ở trục đèn chính 165

Hình 5.8: Lưu đồ thuật toán chương trình khi bật đèn đỏ ở trục đèn phụ 165

Hình 5.9: Lưu đồ thuật toán chương trình khi bật đèn xanh ở trục đèn phụ 166

Hình 5.10: Lưu đồ thuật toán chương trình khi bật đèn vàng ở trục đèn phụ 166

Hình 5.11: Sơ đồ đấu nối bài tập lập trình điều khiển bật/tắt tự động hệ thống LED đơn (xanh, đỏ, vàntheo thời gian trên sa bàn mô hình đèn giao thông 168

Hình 5.12: Sơ đồ nguyên lý bài thí nghiệm điều khiển thay đổi tốc độ động cơ theo thời gian trên sa bàn mô hình đèn giao thông 169

Hình 5.13: Lưu đồ thuật toán chương trình khi bật đèn xanh, động cơ quay với tốc độ lớn nhất 171

Hình 5.14: Lưu đồ thuật toán chương trình khi bật đèn vàng, động cơ giảm tốc tới tốc độ trung bình 171

Hình 5.15: Lưu đồ thuật toán chương trình khi bật đèn đỏ, động cơ dừng 172

Hình 5.16: Sơ đồ đấu nối bài tập lập trình điều khiển tự động bật/tắt tốc độ 174

Hình 5.17: Sơ đồ nguyên lý bài thí nghiệm cho hệ thống đèn giao thông trên sa bàn mô hình đèn giao thông 178

Hình 5.18: Lưu đồ thuật toán chương trình lập trình hệ thống đèn giao thông 180

Hình 5.19: Sơ đồ đấu nối bài tập lập trình hệ thống đèn giao thông 182

Hình 6.1 Zolertia Z1 188

Hình 6.2 Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình bật/tắt cho 1 LED 190

Hình 6.3 Lưu đồ thuật toán bật 1 LED 191

Hình 6.4 Lưu đồ thuật toán tắt 1 LED 191

Hình 6.5: Sơ đồ đấu nối bài thí nghiệm bật/tắt cho 1 LED trên chân P2.0 192

Hình 6.6: Giao diện màn hình Terminal khi nạp chương trình thành công 194

Hình 6.7: Giao diện màn hình Terminal khi nạp chương trình bị lỗi 195

Hình 6.8: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình bật/tắt cho 08 LED 196

Hình 6.9: Lưu đồ thuật toán bật 8 LED 197

Hình 6.10: Lưu đồ thuật toán tắt 8 LED 197

Hình 6.11: Sơ đồ đấu nối bài thí nghiệm nối bật/tắt cho 08 LED 198

Hình 6.12: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình bật/tắt 16 LED 201

Hình 6.13: Lưu đồ thuật toán bật 16 LED 202

Trang 15

Hình 6.14: Lưu đồ thuật toán tắt 16 LED 202 Hình 6.15: Sơ đồ đấu nối bài thí nghiệm bật/tắt cho 16 LED 203 Hình 6.16: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình bật/tắt 1 LED theo thời gian 206 Hình 6.17: Lưu đồ thuật toán LED bật/tắt trong thời gian 5s 207 Hình 6.18: Sơ đồ đấu nối bài thí nghiệm bật/tắt 1 LED theo thời gian 208 Hình 6.19: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình bật/tắt hệ thống 08 LED theo thời gian 210 Hình 6.20: Lưu đồ thuật toán 8 LED bật/tắt trong thời gian 10s 211 Hình 6.21: Sơ đồ đấu nối bài thí nghiệm bật/tắt hệ thống 08 LED theo thời gian 212 Hình 6.22: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình bật/tắt hệ thống 16 LED theo hiệu ứng 214 Hình 6.23: Lưu đồ thuật toán bật/tắt hệ thống 16 LED theo hiệu ứng chạy vòng 215 Hình 6.24: Sơ đồ đấu nối bài thí nghiệm bật/tắt hệ thống 16 LED với hiệu ứng chạy vòng 216 Hình 7.1 Sơ đồ mạch cảm biến ánh sáng sử dụng LDR 225 Hình 7.3 Rơ-le điện tử SSR-10DA 225 Hình 7.4 Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình thu thập dữ liệu từ cảm biến nhiệt độ hiển thị lên máy tính 227 Hình 7.5 Lưu đồ thuật toán thu thập giá trị ADC hiển thị lên máy tính 227 Hình 7.6 Sơ đồ đấu nối bài thí nghiệm thu thậpdữ liệu từ cảm biến nhiệt độ hiển thị lên máy tính 228 Hình 7.7 Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình thu thập dữ liệu từ cảm biến ánh sáng hiển thị lên máy tính 231 Hình 7.8 Lưu đồ thuật toán thu thập giá trị ánh sáng sử dụng chân ADC0 232 Hình 7.9: Sơ đồ đấu nối bài thí nghiệm thu thập dữ liệu từ cảm biến ánh sáng hiển thị lên máy tính 233 Hình 7.10: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình điều khiển bật/tắt 1 thiết

bị điện sử dụng 1 nút bấm 236 Hình 7.11: Lưu đồ thuật toán điều khiển bật/tắt 1 thiết bị điện sử dụng 1 nút bấm 236

Trang 16

Hình 7.12: Sơ đồ đấu nối bài thí nghiệm điều khiển bật/tắt 1 thiết bị điện sử dụng 1 nút bấm 237 Hình 7.13: Sơ đồ đấu nối bài thí nghiệm điều khiển bật/tắt 2 thiết bị điện sử dụng 2 nút bấm 241 Hình 7.15: Sơ đồ đấu nối bài thí nghiệm điều khiển bật/tắt 2 thiết bị điện sử dụng 2 nút bấm 243 Hình 7.16: Sơ đồ đấu nối bài thí nghiệm điều khiển thiết bị điện theo ngưỡng nhiệt độ 247 Hình 7.17: Lưu đồ thuật toán điều khiển thiết bị điện dựa trên ngưỡng của nhiệt độ 248 Hình 7.18: Sơ đồ đấu nối bài thí nghiệm điều khiển thiết bị điện theo ngưỡng nhiệt độ 249 Hình 7.19: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình điều khiển thiết bị điện theo ngưỡng ánh sáng 252 Hình 7.20: Lưu đồ thuật toán điều khiển thiết bị điện dựa trên ngưỡng của ánh sáng 253 Hình 7.21: Sơ đồ đấu nối bài thí nghiệm điều khiển thiết bị điện theo ngưỡng ánh sáng 254 Hình 7.22: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình điều khiển thiết bị điện theo ngưỡng nhiệt độ, ánh sáng 257 Hình 7.23: Lưu đồ thuật toán điều khiển thiết bị điện dựa trên ngưỡng của ánh sáng

và nhiệt độ 258 Hình 7.24: Sơ đồ đấu nối bài thí nghiệm điều khiển thiết bị điện theo ngưỡng nhiệt độ, ánh sáng 259 Hình 8.1 Cảm biến chuyển động 265 Hình 8.2 Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình tác động ngắttừ 1 nút bấm

để bật/tắt 1 LED đơn 266 Hình 8.3 Lưu đồ thuật toán tác động ngắt từ nút bấm để bật/tắt 1 led đơn 267 Hình 8.4 Sơ đồ đấu nối bài thí nghiệm tác động ngắt từ 1 nút bấm để bật/tắt 1 LED đơn 268

Trang 17

Hình 8.5 Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình tác động ngắt từ 1 nút bấm

để thay đổi chế độ chạy 08 LED đơn 271

Hình 8.6: Lưu đồ thuật toán tác động ngắt từ nút bấm để thay đổi chế độ chạy của 8 LED 272

Hình 8.7: Sơ đồ đấu nối bài thí nghiệm tác động ngắt từ nút bấm để thay đổi hiệu ứng 8 LED 273

Hình 8.8: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình kết nối với cảm biến chuyển động và thông báo tới máy tính 279

Hình 8.9: Lưu đồ thuật toán phát hiện chuyển động 280

Hình 8.10: Sơ đồ đấu nối bài thí nghiệm kết nối với cảm biến chuyển động và thông báo tới máy tính 281

Hình 8.11: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình điều khiển bật 1 LED sáng khi phát hiện có chuyển động 284

Hình 8.12: Lưu đồ thuật toán phát hiện có chuyển động thì bật 1 led sáng 285

Hình 8.13: Sơ đồ đấu nối bài thí nghiệm điều khiển bật 1 LED sáng khi phát hiện có chuyển động 286

Hình 8.14: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình điều khiển bật còi báo động khi phát hiện có chuyển động 289

Hình 8.15: Lưu đồ thuật toán lập trình phát hiện có chuyển động thì còi báo động 290 Hình 8.16: Sơ đồ đấu nối bài thí nghiệm điều khiển bật còi báo động khi phát hiện có chuyển động 291

Hình 8.17: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình điều khiển bật thiết bị điện khi phát hiện có chuyển động 294

Hình 8.18: Lưu đồ thuật toán phát hiện có chuyển động thì bật 1 thiết bị điện 294

Hình 8.19: Sơ đồ đấu nối bài thí nghiệm điều khiển bật thiết bị điện khi phát hiện có chuyển động 295

Hình 9.1 Cảm biến dòng điện theo hiệu ứng hall ACS 712 300

Hình 9.3: Lưu đồ thuật toán đo cường độ dòng điện của 1 thiết bị điện 302

Hình 9.4: Sơ đồ đấu nối bài thí nghiệm đo dòng điện 1 thiết bị điện 303 Hình 9.5: Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình đo dòng điện 2 thiết bị điện

Trang 18

Hình 9.6: Lưu đồ thuật toán đo dòng điện 2 thiết bị điện 308 Hình 9.7: Sơ đồ đấu nối bài thí nghiệm đo dòng điện 2 thiết bị điện 309 Hình 10.1 Sơ đồ nguyên lý điện tử bài thí nghiệm lập trình tích hợp sử dụng một số thành phần trên module IZ02, IZ03, IZ04 317

Hình 10.2 Lưu đồ thuật toán bài thí nghiệm lập trình tích hợp sử dụng một số thànhphần trên module IZ02, IZ03, IZ04 319

Trang 19

- Nền tảng Arduino: Cấu trúc phần cứng và phần mềm lập trình Arduino.

- Cách nhập xuất tín hiệu qua cổng I/O: Tín hiệu số và tín hiệu tương tự củaArduino

- Cách giao tiếp của Arduino với các thiết bị ngoại vi như: Bàn phím, LED 7đoạn, màn hình LCD, driver điều khiển động cơ một chiều, chiết áp, công tắc

B CƠ SỞ LÝ THUYẾT

Yêu cầu Sinh viên:

- Có kiến thức về lập trình C/C++, kiến thức về vi xử lý

- Có kiến thức về mạch điện tử, nền tảng Arduino

- Có kiến thức về một số thiết bị, linh kiện điện tử: một số loại IC, cảm biến,màn hình LCD…

Trang 20

BÀI 1: LẬP TRÌNH I/O HỆ THỐNG 16 LED ĐỎ ĐƠN NỘI DUNG THỰC HÀNH

1.1 Thiết bị sử dụng

- Module thí nghiệm IA01.

- Đế chung.

- Máy tính.

- Phụ tùng: dây điện có phích cắm hai đầu, cáp nạp chương trình cho Arduino.

- Tài liệu hướng dẫn thí nghiệm.

Trang 22

1.2 Nội dung chuẩn bị

- Tìm hiểu khối đế chung, sơ đồ nguyên lý và thiết bị sử dụng trong Module IA01

- Chuẩn bị phụ tùng phục vụ cho thí nghiệm Module IA01

- Bật Aptomat ở đế chung để cấp nguồn xoay chiều cho bài thí nghiệm Kiểm tra đènbáo 220VAC ở khối nguồn xoay chiều, đèn sáng: Nguồn điện xoay chiều đã sẵn sàng

- Bật máy tính đã cài đặt phần mềm lập trình Arduino, dùng cáp kết nối máy tính vớiArduino, bật phần mềm lập trình cho Arduino, chọn cổng của máy tính kết nối vớiArduino và loại Arduino đang sử dụng

- Cấp nguồn cho Module IA01:

+ Dùng dây điện có phích cắm hai đầu để nối chốt: ‘GND’,’+5V’ ‘+12V’ của bộnguồn điện một chiều ở đế chung với chốt: ‘GND’, ‘+5V’, ‘+12V’ ở Module IA01 đểcấp nguồn cho Module thí nghiệm

Trang 23

- Giúp người học bước đầu làm quen với phần mềm và phần cứng Arduino Phần mềm

mô phỏng Proteus

- Giúp người học biết cách lập trình xuất tín hiệu điều khiển ra một chân I/O của nềntảng Arduino

Sơ đồ nguyên lý điện tử

Hình 1.5: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt một LED đơn

trên cổng P13 của Arduino

Nguyên lý hoạt động

Nhiệm vụ trong bài tập này là điều khiển bật/tắt LED đơn Việc bật/tắt LEDđơn tương ứng với việc đưa tín hiệu ra cổng vào/ra của Arduino LED đơn được điềukhiển bởi chân P13 (digital) của Arduino LED sẽ sáng khi chân P13 ở mức thấp(LOW) và tắt khi chân P13 ở mức cao (HIGH) do đầu còn lại của LED nối với nguồn5V qua điện trở 220 Ohm LED sẽ sáng trong 1giây rồi tắt

Lưu đồ thuật toán

Trang 24

Hình 1.6: Lưu đồ thuật toán chương trình bật/tắt 01 LED đơn trên cổng P13

Các bước thực hiện

- Bước 1: Dùng dây điện có phích cắm hai đầu để nối chốt ‘P13’ của Arduino với chốt

‘IN1’ của LED đơn ‘D1’ trên Module IA01 Sau khi kết nối các chốt, ta có sơ đồ kếtnối hoàn chỉnh của bài thí nghiệm như sau:

Hình 1.7: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm bật/tắt một LED đơn trên cổng

P13 của Arduino

- Bước 2: Viết chương trình bật/tắt cho 1 LED đơn trên cổng P13 với các lệnh như sau,

tên file là bat.tat.ino:

Trang 25

- Bước 3: Biên dịch chương trình để kiểm tra chương trình có lỗi hay không Trên giao

diện phần mềm lập trình Arduino bấm vào biểu tượng ‘Veryfi’ để biên dịch chương

trình Nếu chương trình có lỗi thì xử lý ngược lại chuyển sang bước 4

Hình 1.8: Biên dịch chương trình

- Bước 4: Nạp chương trình vào Arduino: trên giao diện phần mềm lập trình Arduino,

bấm vào biểu tượng ‘Upload’ để nạp chương trình điều khiển vào Arduino Nếu xuất

hiện lỗi thì kiểm tra lỗi và xử lý, ngược lại chuyển sang bước 5

Trang 26

Hình 1.9: Nạp chương trình điều khiển vào Arduino

- Bước 5: Gạt công tắc nguồn 1 chiều ở khối nguồn một chiều trên đế chung sang vị trí

‘on’ để chạy chương trình và theo dõi quá trình chạy chương trình.

Bài tập mở rộng

- Bài tập: Lập trình bật/tắt 1 LED đơn trên cổng P2 của Arduino

Báo cáo kết quả

- Sinh viên thực hiện thí nghiệm, nhận xét kết quả quan sát được có đúng theo yêu cầu

bài toán đặt ra không? Các lỗi phát sinh nếu có, hướng kiểm tra và khắc phục

- Sinh viên vận dụng kiến thức có được làm bài tập mở rộng

* Bài tập 2: Lập trình bật/tắt 08 LED đơn sáng trên cổng P0-P7 của Arduino Mục đích

- Giúp người học thành thạo hơn với cách nhập/xuất dữ liệu trên các cổng I/O của

Arduino

- Giúp người học vận dụng những kiến thức đã được học ở môn lập trình chuyên dụng

Sơ đồ nguyên lý điện tử

Trang 27

Hình 1.10: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt 08 LED đơn

trên cổng P0-P7 của Arduino

Nguyên lý hoạt động

Nhiệm vụ trong bài tập này là điều khiển bật/tắt 08 LED đơn Việc bật/tắt LEDđơn tương ứng với việc đưa tín hiệu ra cổng vào/ra của Arduino LED đơn được điềukhiển bởi chân P0-P7 (digital) của Arduino LED sẽ sáng khi 08 chân P0-P7 ở mứcthấp (LOW) và tắt khi 08 chân P0-P7 ở mức cao (HIGH) do đầu còn lại của LED nốivới nguồn 5V qua điện trở 220 Ohm LED sẽ sáng trong 1giây rồi tắt

Lưu đồ thuật toán

Tắt 8 LED cùng lúc

Trang 28

Hình 1.11: Lưu đồ thuật toán chương trình bật/tắt 08 LED đơn trên cổng P0-P7

Các bước thực hiện

- Bước 1: Dùng các dây điện có phích cắm hai đầu để nối 08 chốt (P0- P7) củaArduino với 08 chốt (IN9-IN16) của 08 LED đơn (D9- D16) trên Module IA01 nhưsau:

 Nối chốt P0 với chốt IN16

 Nối chốt P1 với chốt IN15

 Nối chốt P2 với chốt IN14

 Nối chốt P3 với chốt IN13

 Nối chốt P4 với chốt IN12

 Nối chốt P5 với chốt IN11

 Nối chốt P6 với chốt IN10

 Nối chốt P7 với chốt IN9

Sau khi kết nối các chốt, ta có sơ đồ kết nối hoàn chỉnh của bài thí nghiệm như sau:

Hình 1.12: Sơ đồ đấu nối hoàn chình bài thí nghiệm bật/tắt 08 LED đơn trên cổng

P0-P7 của Arduino

- Bước 2: Viết chương trình bật/tắt cho 08 LED đơn trên cổng P0-P7 với các lệnh nhưsau, tên file là bat.tat 8LED.ino:

Trang 29

- Bước 5: Gạt công tắc nguồn 1 chiều ở khối nguồn một chiều trên đế chung sang vị trí

‘on’ để chạy chương trình và theo dõi quá trình chạy chương trình.

Bài tập mở rộng

- Bài tập: Lập trình bật/tắt 08 LED trên cổng P8-P13, A0-A1

Báo cáo kết quả

- Sinh viên thực hiện thí nghiệm, nhận xét kết quả quan sát được có đúng theo yêu cầu

bài toán đặt ra không? Các lỗi phát sinh nếu có, hướng kiểm tra và khắc phục

- Sinh viên vận dụng kiến thức có được làm bài tập mở rộng

1.3.2 Lập trình bật/tắt từng LED và toàn bộ hệ thống LED đỏ đơn bằng công tắc

* Bài tập 1: Lập trình bật/tắt 01 LED đơn sáng tại cổng P7 của Arduino bằng 01 công tắc qua cổng A2 của Arduino

Mục đích

- Giúp người học làm quen với các chân analog của Arduino, cách xuất tín hiệu ra các

chân này

- Giúp người học nắm được cách sử dụng công tắc để điều khiển bật/tắt LED

Sơ đồ nguyên lý điện tử

Trang 30

Hình 1.13: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt một LED đơn bằng công tắc

Nguyên lý hoạt động của sơ đồ nguyên lý điện tử

Một LED đỏ nối với nguồn 5V qua 1 trở 220 Ohm, LED này được điều khiểnbởi chân P7 của Arduino Arduino sẽ đọc mức logic tại chân A2 – mức logic chính làtrạng thái của công tắc là đóng hay mở Nếu Công tắc đóng, mức logic tại chân A2 làmức cao (HIGH) LED sẽ tắt và nếu công tắc mở, mức logic tại chân A2 là thấp(LOW) LED sẽ sáng Như vậy, LED sáng hay tắt sẽ dựa vào trạng thái đóng mở củacông tắc

Lưu đồ thuật toán

Khai báo cổng bật/tắt LED (P7) Khai báo cổng kết nối với công tắc (A2) Khai báo biến giatri

Trang 31

Các bước thực hiện

- Bước 1: Nối nguồn điện cho công tắc SW1: Dùng dây điện có phích cắm hai đầu đểnối chốt ‘+5V’, ‘GND’ của bộ nguồn điện một chiều với chốt ‘+5V’, ‘GND’ của côngtắc SW1 trên đế chung

- Bước 2: Nối dây tín hiệu cho Arduino:

Dùng dây điện có phích cắm hai đầu để nối chốt ‘P13’ của Arduino với chốt

‘IN1’ của LED đơn D1 trên Moudle IA01

Dùng dây điện có phích cắm hai đầu để nối chốt ‘A0’ của Arduino ở trênModule IA01 với chốt ‘K1’ của công tắc SW1 trên đế chung

Sau khi kết nối các chốt, ta có sơ đồ đấu nối hoàn chỉnh của bài thí nghiệm như sau:

Hình 1.15: Sơ đồ đấu nối hoàn chỉnh bài thí nghiệm bật/tắt 1 LED đơn

Trang 32

- Bước 6: Gạt công tắc nguồn 1chiều ở khối nguồn một chiều trên đế chung sang vị trí

‘on’ để chạy chương trình Gạt công tắc SW1 để điều khiển bật/tắt LED D1 và theo

dõi quá trình chạy chương trình

Bài tập mở rộng

- Bài tập: Lập trình bật/tắt 01 LED đơn sáng tại cổng P8 bằng một công tắc qua cổngP2 của Arduino

Báo cáo kết quả

- Sinh viên thực hiện thí nghiệm, nhận xét kết quả quan sát được có đúng theo yêu cầu

bài toán đặt ra không? Các lỗi phát sinh nếu có, hướng kiểm tra và khắc phục

- Sinh viên vận dụng kiến thức có được làm bài tập mở rộng

* Bài tập 2: Lập trình bật/tắt 08 LED đơn sáng tại cổng P0-P7 bằng 01 công tắc qua cổng A2 của Arduino

Trang 33

Hình 1.16: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt 08 LED đơn bằng một công

tắc

Nguyên lý hoạt động

Khi hoạt động Arduino sẽ đọc mức logic tại chân A2 để điều khiển bật/tắt đènLED Khi công tắc có mức logic cao (HIGH) ứng với trạng thái công tắc đóng thìArduino sẽ xuất ra tín hiệu mức thấp (LOW) trên các cổng từ P0 đến P7 khi này cả 8LED được nối với các cổng từ P0 đến P7 đều sáng Khi công tắc có mức logic thấp(LOW) ứng với trạng thái công tác mở thì Arduino sẽ xuất ra tín hiệu mức cao (HIGH)trên các cổng từ P0 đến P7 khi này cả 8 LED được nối với các cổng từ P0 đến P7 đềutắt

Lưu đồ thuật toán

Khai báo cổng bật/tắt LED (từ P0-P7) Khai báo cổng kết nối với công tắc (A2) Khai báo biến Turn

Trang 34

Hình 1.17: Lưu đồ thuật toán chương trình bật/tắt 08 LED đơn trên cổng P0-P7 sử

dụng công tắc tại cổng A2

Các bước thực hiện

- Bước 1: Nối nguồn điện cho công tắc SW1: Dùng dây điện có phích cắm hai đầu đểnối chốt ‘+5V’, ‘GND’ của bộ nguồn điện một chiều với chốt ‘+5V’, ‘GND’ của côngtắc SW1 trên đế chung

- Bước 2: Nối dây tín hiệu cho Arduino: Dùng các dây điện có phích cắm hai đầu để

nối chốt (P0- P7) của Arduino với chốt (IN9- IN16) của các LED đơn (D9- D16) trênModule IA01 như sau:

Nối chốt P0 với chốt IN16

Nối chốt P1 với chốt IN15

Nối chốt P2 với chốt IN14

Nối chốt P3 với chốt IN13

Nối chốt P4 với chốt IN12

Nối chốt P5 với chốt IN11

Nối chốt P6 với chốt IN10

Nối chốt P7 với chốt IN9

Dùng dây điện có phích cắm hai đầu để nối chốt ‘A0’ của Arduino ở trên ModuleIA01 với chốt ‘K1’ của công tắc SW1 trên đế chung

Sau khi kết nối các chốt, ta có sơ đồ đấu nối hoàn chỉnh của bài thí nghiệm như sau:

Trang 35

Hình 1.18: Sơ đổ đấu nối hoàn chỉnh bài thí nghiệm bật/tắt 08 LED đơn bằng một

Trang 36

- Bước 6: Gạt công tắc nguồn 1 chiều ở khối nguồn một chiều trên đế chung sang vị trí

‘on’ để chạy chương trình Gạt công tắc SW1 để điều khiển bật/tắt LED D1 và theo

dõi quá trình chạy chương trình

Bài tập mở rộng

- Bài tập: Lập trình bật/tắt 08 LED trên cổng P8-P13, A0-A1 bằng một công tắc quacổng

Báo cáo kết quả

- Sinh viên thực hiện thí nghiệm, nhận xét kết quả quan sát được có đúng theo yêu cầu

bài toán đặt ra không? Các lỗi phát sinh nếu có, hướng kiểm tra và khắc phục

- Sinh viên vận dụng kiến thức có được làm bài tập mở rộng

1.3.3 Lập trình bật/tắt hệ thống LED đỏ đơn theo thời gian với một số hiệu ứng

* Bài tập 1: Lập trình bật/tắt 08 LED đơn tại cổng P0-P7 của Arduino đồng loạt sáng trong một giây rồi đồng loạt tắt sau một giây và lặp đi lặp lặp lại

Mục đích

- Giúp người học nắm được cách sử dụng hàm delay trong phần mềm để lập trình điều

khiển bật/tắt LED theo một số hiệu ứng

Sơ đồ nguyên lý điện tử

Trang 37

Hình 1.19: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt 08 LED đơn theo thời gian

với một số hiệu ứng

Nguyên lý hoạt động

Khi hoạt động Arduino sẽ xuất tín hiệu mức thấp (LOW) ra 8 chân từ P0 đến P7

để bật đồng thời 8 LED (thời gian sáng trong 1 giây) Sau đó Arduino xuất tín hiệumức cao (HIGH) ra 8 chân từ P0 đến P7 để tắt đồng thời 8 LED (thời gian tắt trong 1giây) Quá trình này lặp đi lặp lại với chu kỳ 2 giây

Lưu đồ thuật toán

 Nối chốt P0 với chốt IN16

 Nối chốt P1 với chốt IN15

 Nối chốt P2 với chốt IN14

 Nối chốt P3 với chốt IN13

 Nối chốt P4 với chốt IN12

 Nối chốt P5 với chốt IN11

Trang 38

 Nối chốt P6 với chốt IN10.

 Nối chốt P7 với chốt IN9

Sau khi kết nối các chốt, ta có sơ đồ kết nối hoàn chỉnh của bài thí nghiệm như sau:

Hình 1.21: Sơ đồ đấu nối hoàn chình bài thí nghiệm bật/tắt 08 LED đơn theo thời gian

Trang 39

- Bước 6: Gạt công tắc nguồn 1 chiều ở khối nguồn một chiều trên đế chung sang vị

trí ‘on’ để chạy chương trình và theo dõi quá trình chạy chương trình.

Bài tập mở rộng

- Bài tập: Lập trình bặt/tắt 08 LED đơn trên cổng P8-P13, A0- A1 của Arduino cùngsáng trong 1 giây rồi cùng tắt và lặp đi lặp lại

Báo cáo kết quả

- Sinh viên thực hiện thí nghiệm, nhận xét kết quả quan sát được có đúng theo yêu cầu

bài toán đặt ra không? Các lỗi phát sinh nếu có, hướng kiểm tra và khắc phục

- Sinh viên vận dụng kiến thức có được làm bài tập mở rộng

Sơ đồ nguyên lý điện tử

Trang 40

Hình 1.22: Sơ đồ nguyên lý điện tử bài thí nghiệm bật/tắt 16 LED đơn sáng theo hiệu

ứng chạy vòng

Nguyên lý hoạt động của sơ đồ nguyên lý điện tử

16 LED, mỗi LED đơn nối với nguồn 5V qua trở 220 Ohm Lần lượt mỗi LEDđược điều khiển bởi 16 chân theo thứ tự P0-P13 và A0-A1 Arduino sẽ lần lượt xuấtmức thấp (LOW) P0 để bật LED thứ 1 trong 100 mili giây, các chân còn lại ở mức cao(HIGH) và LED tại các chân này tắt Sau 100 mili giây, chân P1 ở mức thấp và LEDtại chân P1 sáng; chân P0 và các chân còn lại ở mức cao, các LED tại các chân này tắt.Tương tự các LED tiếp theo sẽ lần lượt sáng trong 100 mili giây cho đến khi hết 16LED rồi lặp lại tạo thành hiệu ứng chạy vòng

Lưu đồ thuật toán

Ngày đăng: 26/08/2016, 08:45

TỪ KHÓA LIÊN QUAN

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

w