Phần mềm và ngôn ngữ lập trình cho robot giáo dục Khởi động Khởi động trang 45 chuyên đề học tập Tin 10: Em hãy kể tên một số ngôn ngữ lập trình đã biết? Trả lời: Một số ngôn ngữ lập trình là: EssyCode, Scratch, C, C++, Python, Blockly. Lập trình điều khiển trong EasyCode IDE Hoạt động Hoạt động 1 trang 46 chuyên đề học tập Tin 10: Bài thực hành tạo chương trình điều khiển LED. Yêu cầu: Tạo chương trình điều khiển đèn LED L nhấp nháy liên tục như Hình 1. Đèn LED L có trên bảng mạch Arduino đã được nối sẵn vào chân 13.
Chuẩn bị - Robot Arduino - Máy tính đã cài phần mềm EasyCode. Tiến hành Bước 1. Tạo chương trình mới Trên Thanh bảng chọn, chọn Tệp tin, chọn Tạo (Hình 2) hoặc nhấn tổ hợp phím Ctrl+N Bước 2. Chọn thiết bị Trên Thanh bảng chọn, chọn Thiết bị, chọn Arduino Uno (Hình 3) Bước 3.
Lập trình Theo yêu cầu của hoạt động, tiến hành lập trình bằng cách lần lượt lấy khối lệnh và kéo thả, thả vào khu vực lập trình, ghép nối và lựa chọn tham số trong từng khối lệnh như chương trình (Hình 1) - Chọn khối lệnh: + Chọn khối lệnh Khi Arduino robot khởi động bằng cách: (1) Nháy chuột trái vào nhóm lệnh Sự kiện (2) Nháy chuột trái để chọn khối Khi Arduino robot khởi động (3) Nháy giữ chuột trái và kéo, thả lệnh vừa chọn ra khu vực lập trình (Hình 4) + Chọn khối lệnh Lặp lại mãi trong nhóm lệnh Điều khiển + Chọn khối lệnh Xuất tín hiệu Số cho chân trong nhóm lệnh Vào, ra. + Chọn khối lệnh Chờ trong nhóm lệnh Thời gian. - Ghép khối lệnh: Kéo khối lệnh Lặp lại mãi mãi hướng lại gần khối lệnh Khi Arduino robot khởi động như Hình 5 để ghép nối hai khối lệnh. - Lựa chọn tham số cho khối lệnh: Mỗi khối lệnh sẽ có một hoặc nhiều tham số.
Để lựa chọn hay đặt giá trị cho tham số, ta nhay chuột vào các tham số tương ứng. Có tham số sẽ thả xuống danh sách các giá trị mà ta có thể chọn, có những tham số ta có thể nhập trực tiếp giá trị từ bàn phím. Lưu chương trình Trên Thanh bảng chọn, chọn Tệp tin, chọn Lưu (hoặc nhấn tổ hợp phím Ctrl+S) để lưu chương trình. Kiểm tra và nạp chương trình Di chuyển chuột đến vị trí Nút IDE, khi đó sẽ xuất hiện ba nút lệnh.
Nút để nạp chương trình (tải chương trình lên Arduino), nút để kiểm tra lỗi của chương trình, nút để mở chương trình trong IDE. Bấm nút để kiểm tra chương trình, sau đó bấm chuột vào phần cửa sổ thông báo để xem thông báo và báo lỗi của chương trình (nếu có). Xử lý lỗi Nếu khó quan sát đoạn lệnh do kích thước quá nhỏ hoặc quá to, ta có thể thực hiện theo cách sau: - Nhấn giữ tổ hợp phím Ctrl+lăn nút cuộn chuột lên hoặc xuống để phóng to hoặc thu nhỏ. - Sử dụng thanh định dạng quan sát để thao tác nhanh.
- Có thể ẩn phần Mã nguồn Arduino bằng cách chọn Chỉnh sửa, chọn Ẩn mã nguồn. Hoạt động 2 trang 49 chuyên đề học tập Tin 10: Bài thực hành lập trình sử dụng cấu trúc tuần tự, rẽ nhánh và lặp. Yêu cầu: Viết chương trình điều khiển đèn LED tự động bật hoặc tắt thông minh theo ánh sáng môi trường. Nếu trời sáng thì tắt đèn, trời tối thì bật đèn.
Biết rằng, tín hiệu của cảm biến ánh sáng được đưa vào chân 2 của Arduino, có mức THẤP khi trời sáng và mức CAO khi trời tối. Đèn LED được kết nối với chân 13 của Arduino, đèn bật khi được cấp mức CAO và đèn tắt khi được cấp mức THẤP (Hình 7). Chuẩn bị Máy tính đã cài phần mềm EasyCode b. Tiến hành Bước 1.
Tạo chương trình mới Bước 2. Chọn thiết bị Bước 3. Lập trình Bước 4. Lưu chương trình Bước 5.
Kiểm tra chương trình - Trong lập trình nói chung và lập trình trực quan nói riêng, có nhiều câu lệnh, khối lệnh hay cấu trúc được sử dụng lăp lại. Chương trình trong Hình 8 có hai khối lệnh ghép (chứa nhiều khối lệnh con) là nếu…thực hiện…. Để thực hiện nhanh, ta có thể sao chép cả khối lệnh, rồi sửa đổi tham số cho phù hợp. Ta có thể nháy chuột phải vào khối lệnh đơn, khối lệnh ghép cần sao chép, sau đó chọn Tạo bản sao (Hình 9).
- Ngoài ra, khi nháy chuột trái vào mỗi khối lệnh đơn, khối lệnh ghép, ta có thể thêm các lựa chọn. Tùy theo hiện trạng của khối lệnh, sẽ xuất hiện bảng tùy chọn khác nhau. Tại bảng tùy chọn Hình 9 có một số lựa chọn sau: + Thêm Chú giải: để thêm mô tả cho ý nghĩa khối lệnh trong chương trình. + Thu Nhỏ Mảnh: Để chỉ quan sát khối lệnh ghép giống như một lệnh đơn.
+ Ngưng tác dụng: Sử dụng khi không muốn xóa khối lệnh mà chỉ muốn tạm dừng của tác dụng của lệnh. + Xóa 8 mảnh: Dùng để xóa cả 8 khối lệnh đơn trong khối lệnh thép. + Trợ giúp: Xem thêm các hướng dẫn về khối lệnh (nếu có). Xử lý lỗi Khi chọn nhầm hoặc kéo thừa khối lệnh: - Có thể xóa lệnh bằng cách kéo, thả lệnh muốn xóa vào biểu tượng thùng rác.
- Có thể quay lại quá trình trước đó bằng cách chọn Chỉnh sửa, chọn Quay lại hoặc ấn tổ hợp phím Ctrl+ Z. Luyện tập Luyện tập trang 51 chuyên đề học tập Tin 10: Sửa lệnh rẽ nhánh trong Hoạt động 2 để ngưỡng bật tắt đèn LED ở chân A0 là 300 và thời gian bật, tắt rút ngắn lại chỉ còn 500ms. Trả lời: Ngưỡng bật tắt đèn LED ở chân A0 là 300 và thời gian bật, tắt rút ngắn lại chỉ còn 500ms. Vận dụng Bài 1 trang 51 chuyên đề học tập Tin 10: Em hãy viết chương trình điều khiển hai đèn: LED xanh (chân 12) và LED đỏ (chân 13) liên tục bật tắt trái ngược nhau, đèn này bật thì đèn kia tắt và ngược lại.
Em có thể lựa chọn thời gian bật, tắt tùy ý. Trả lời: Bài 2 trang 51 chuyên đề học tập Tin 10: Em hãy viết một chương trình điều khiển ba đèn LED (được nối lần lượt vào các chân 3,5,6) như Hình 10, hoạt động như sau: a) Sáng lần lượt từ trái sang phải. b) Sáng lần lượt từ phải sang trái rồi lặp lại. c) Sáng nhấp nháy.
Sáng lần lượt từ trái sang phải. Sáng lần lượt từ phải sang trái rồi lặp lại. Sáng nhấp nháy Câu hỏi tự kiểm tra Câu 1 trang 51 chuyên đề học tập Tin 10: Trong các câu sau đây, câu nào đúng? 1) Môi trường phát triển tích hợp chỉ để soạn thảo chương trình. 2) Trong ngôn ngữ lập trình trực quan, chương trình được viết bằng cách kéo thả các câu lệnh và gắp ghép chúng với nhau trong khu vực làm việc.
3) Lập trình giúp robot hoạt động thông minh. 4) Lập trình trực quan giúp ta nhanh chóng tạo được chương trình cho robot mà không lo bị lỗi cú pháp. 5) Lập trình trực quan bị giới hạn về khối lệnh. 6) Lập trình trực quan không thể tạo được những chương trình phức tạp.
Trả lời: Các câu sau đúng: 2) Trong ngôn ngữ lập trình trực quan, chương trình được viết bằng cách kéo thả các câu lệnh và gắp ghép chúng với nhau trong khu vực làm việc. 3) Lập trình giúp robot hoạt động thông minh 4) Lập trình trực quan giúp ta nhanh chóng tạo được chương trình cho robot mà không lo bị lỗi cú pháp. Câu 2 trang 51 chuyên đề học tập Tin 10: Có nhiều môi trường phát triển tích hợp (IDE) khác nhau được dùng để lập trình điều khiển robot. Em hãy kể tên các IDE mà em biết? Trả lời: Có nhiều môi trường phát triển tích hợp (IDE) khác nhau được dùng để lập trình điều khiển robot như: Microsoft Visual Studio, Xcode, Netbeans, Pycharm… Bài 1.
Robot Khởi động Khởi động trang 5 chuyên đề học tập Tin 10: Em hãy quan sát Hình 1 và trả lời các câu hỏi sau: 1. Máy móc nào trong Hình 1 được gọi là robot? Giải thích tại sao? 2. Máy móc như thế nào được gọi là robot? Trả lời: 1. Trong Hình 1, máy hút bụi tự động được gọi là robot.
Vì nó giúp con người thực hiện một cách tự động việc lau nhà, hút bụi. Máy móc được gọi là robot khi nó tự động giúp con người thực hiện những công việc lao động sản xuất hoặc những việc lặp đi lặp lại, nặng nhọc, độc hại, nguy hiểm mà chúng ta không muốn làm hoặc không thể làm được. Đặc điểm của robot Hoạt động Hoạt động trang 6 chuyên đề học tập Tin 10: Em hãy nêu suy nghĩ về robot thông qua trả lời các câu hỏi sau: 1) Robot có cần cảm nhận môi trường xung quanh không? 2) Robot có cần tự hoạt động không? 3) Robot có cần năng lượng không? 4) Robot có cần trí thông minh không? 5) Robot có cần hình dạng giống như con người không? Trả lời: 1) Có, thông qua cảm biến, robot thu nhận thông tin về môi trường xung quanh. 2) Có, thông qua các thiết bị chấp hành, robot tương tác với các thực thể khác để thực hiện nhiệm vụ.
3) Có, khi thiết kế robot, phải lựa chọn nguồn cung cấp năng lượng phù hợp với công việc và môi trường làm việc của robot. 4) Có, thông thường trí thông minh robot có được là do lập trình. 5) Robot không cần hình dạng giống như con người. Robot có nhiều hình dạng khác nhau để phù hợp với công việc.
Robot có thể có hình dạng tương tự như con người (người máy). Robot hút bụi có hình dạng tròn dẹt. Robot có bốn chân có thể mang vác trên địa hình gồ ghề robot spot. Có loại mô phỏng các loại động vật như robot Snake mô phỏng loại rắn.
Có robot cao hàng chục mét, có robot chỉ vài cm. Luyện tập Luyện tập trang 8 chuyên đề học tập Tin 10: Em hãy phân loại các máy móc sau đây thành hai nhóm (robot và không phải robot): xe máy, máy vi tính, máy điều hòa, xe tự lái, tàu thám hiểm vũ trụ không người lái, đồng hồ đo nhiệt độ. Trả lời: - Robot: xe tự lái, tàu thám hiểm vũ trụ không người lái. - Không phải robot: xe máy, máy vi tính, máy điều hòa, đồng hồ đo nhiệt độ.
Vận dụng Vận dụng trang 8 chuyên đề học tập Tin 10: Theo em, robot hoạt động trong mỗi lĩnh vực sau đây cần có đặc điểm gì? 1) Giáo dục 2) Y tế 3) Sản xuất 4) Thương mại Gợi ý: Robot trong lĩnh vực y tế có khả năng đo thân nhiệt và thu thập thông tin về các triệu trứng khác, nhờ đó hỗ trợ chuẩn đoán cho bệnh nhân. Trả lời: Robot hoạt động trong mỗi lĩnh vực sau đây cần có đặc điểm: 1.