Bài 6 Chương trình điều khiển robot Khởi động Khởi động trang 28 chuyên đề học tập Tin học 10 Em đã biết muốn điều khiển robot thì cần phải viết chương trình Một chương trình điều khiển robot có đặc đ[.]
Trang 1Bài 6: Chương trình điều khiển robot Khởi động
Khởi động trang 28 chuyên đề học tập Tin học 10: Em đã biết muốn điều khiển
robot thì cần phải viết chương trình Một chương trình điều khiển robot có đặc điểm gì? Cấu trúc một chương trình như thế nào? Bài học này sẽ giúp các em thiết lập được chương trình điều khiển robot
Trả lời:
Em đã biết muốn điều khiển robot thì cần phải viết chương trình Một chương trình điều khiển robot có đặc điểm sau: Chương trình điều khiển phải thường xuyên chờ
để thường xuyên tiếp nhận thông tin vào (tín hiệu thu được từ cảm biến, nút
nấm…) và xử lý để điều khiển các cơ cấu chấp hành (động cơ, tay nâng…) và phụ kiện tiếp nhận điều khiển (còi, màn hình, ) gần như tức thời, cho nên cấu trúc và thực hiện chương trình khác chương trình thực hiện trên máy tính
Cấu trúc của chương trình thường có 2 khối lệnh: Khối lệnh thực hiện khi khởi động chương trình và chạy một lần; khối lệnh thực hiện lặp vô tận dùng để xử lý tín hiệu nhận từ bên ngoài
1 Thiết lập chương trình điều khiển robot
Hoạt động
Hoạt động 1 trang 28 chuyên đề học tập Tin học 10: Cách thiết lập chương trình
điều khiển robot
Đọc, quan sát, tìm hiểu các bước đầu tiên thiết lập chương trình điều khiển robot
Trả lời:
- Hình 6.1 là giao diện phần mềm GaraBlock lập trình điều khiển cho bảng mạch điều khiển G-Robot
Trang 2- Chúng ta sẽ thiết lập một chương trình đơng giản bằng cách kéo thả vào màn hình
để tạo hai khối lệnh như Hình 6.2 Khối thứ nhất bao gồm các lệnh được thực hiện
bốn lần phía sau khối lệnh khởi động khởi động chương trình Khối thứ hai nằm
trong vòng lặp vô tận
Câu hỏi
Câu hỏi 1 trang 29 chuyên đề học tập Tin học 10: Trong chương trình ở Hình
6.2, nếu bỏ 5 câu lệnh nằm trong vòng lặp vô tận (trong khối lệnh thứ 2) ra ngoài
vòng lặp vô tận thì chương trình sẽ chạy như thế nào?
Trả lời:
Trang 3Trong chương trình ở Hình 6.2, nếu bỏ 5 câu lệnh nằm trong vòng lặp vô tận (trong khối lệnh thứ 2) ra ngoài vòng lặp vô tận thì chương trình sẽ chạy như sau: Chương trình sẽ thực hiện lần lượt 5 câu lệnh theo thứ tự từ trên xuống trong một lần duy
nhất
Câu hỏi 2 trang 29 chuyên đề học tập Tin học 10: Vì sao 5 câu lệnh trong khối
lệnh thứ hai ở Hình 6.2 cần phải đưa vào trong vòng lặp vô tận?
Trả lời:
Các câu lệnh cần được thực hiện liên tục cho đến khi ngắt kết nối robot với nguồn pin nên phải đưa vào vòng lặp vô tận
2 Cấu trúc chương trình điều khiển robot
Hoạt động
Hoạt động 2 trang 29 chuyên đề học tập Tin học 10: Tìm hiểu cấu trúc chương
trình điều khiển robot
Đọc, quan sát và tìm hiểu cấu trúc chung của các chương trình điều khiển robot
Trả lời:
Cấu trúc chung của các chương trình điều khiển robot thương có 2 khối lệnh:
- Khởi động chương trình: Khối lệnh này thực hiện khi khởi động chương trình và chạy một lần
- Lặp lại vô tận: Khối lệnh này thực hiện lặp vô tận dùng để xử lý tín hiệu nhận từ bên ngoài
Câu hỏi
Câu hỏi trang 30 chuyên đề học tập Tin học 10: Nếu thay vòng lặp vô tận trong
sơ đồ ở Hình 6.3 bằng vòng lặp hữu hạn thì chương trình còn đúng không?
Trả lời:
Nếu thay vòng lặp vô tận trong sơ đồ ở Hình 6.3 bằng vòng lặp hữu hạn thì chương trình không còn đúng nữa Vì khối lệnh thực hiện lặp vô tận dùng để xử lý tín hiệu nhận từ bên ngoài từ cảm biến hoặc phụ kiện
3 Lập trình điều khiển robot
Hoạt động
Trang 4Hoạt động 3 trang 30 chuyên đề học tập Tin học 10: Tìm hiểu mô hình mã giả
chương trình điều khiển robot
Đọc quan sát và tìm hiểu cách viết chương trình điều khiển robot qua hệ thống mã
giả (pseudocode)
Trả lời:
Để có thể mô tả chung chương trình điều khiển cho các hoạt động robot khác nhau
chúng ta sẽ không sử dụng một ngôn ngữ lập trình cụ thể mà thiết lập một hệ thống
mã giả đơn giản và dễ hiểu Bảng 6.1 mô tả các lệnh mã giả cơ bản
Trang 5Câu hỏi
Câu hỏi 1 trang 31 chuyên đề học tập Tin học 10: Vì sao nhóm lệnh lặp vô tận
phải đặt ở cuối chương trình?
Trả lời:
Nhóm lệnh lặp vô tận phải đặt ở cuối chương trình vì sau lệnh lặp vô tận sẽ không
có lệnh nào có thể thực hiện được nữa
Câu hỏi 2 trang 31 chuyên đề học tập Tin học 10: Em hãy viết chương trình
bằng giải mã để điều khiển G-Robot luôn đi thẳng với tốc độ 100 trong 1 giây và
xoay trái với tốc độ 100 trong 0.5 giây?
Trả lời:
Chương trình có thể viết dưới dạng pseudocode như sau:
Khởi động chương trình
forever
Đi thẳng (100)
Đợi 1 giây
Xoay trái (100)
Đợi 0.5 giây
Luyện tập
Trang 6Luyện tập 1 trang 31 chuyên đề học tập Tin học 10: Khi robot hoạt động theo
chương trình đã nạp chưa đúng như mong muốn thì phải làm gi?
Trả lời:
Nếu thấy chương trình chạy chưa chính xác cần mở lại chương trình, dò lỗi, sửa lại chương trình và nạp lại vào robot để chạy thử tiếp
Luyện tập 2 trang 31 chuyên đề học tập Tin học 10: Robot nhận các tín hiệu từ
bên ngoài như thế nào? Em hãy trình bày cơ chế nhận các thông tin đó?
Trả lời:
Robot nhận tín hiệu từ bên ngoài thông qua các lệnh nhận tín hiệu cảm biến đặt trong nhóm lệnh lặp vô tận của chương trình
Vận dụng
Vận dụng trang 31 chuyên đề học tập Tin học 10: Em hãy viết chương trình
bằng mã giả điều khiển G-robot thực hiện:
- Khi bắt đầu chương trình G-Robot sẽ bật còi trong 1 giây rồi tắt còi Quá trình bật tắt còi lặp lại 3 lần
- Sau đó, G-Robot luôn đi thẳng với tốc độ 100 trong giây và đi lùi với tốc độ 100 trong 2 giây
Trả lời:
Chương trình có thể viết dưới dạng pseudocode như sau:
Khởi động chương trình
repeat 3
Bật còi
Đợi 1 giây
Tắt còi
forever
Đi thẳng (100)
Đợi 1 giây
Đi lùi (100)
Trang 7Đợi 2 giây