Bỏ qua menu, tới nội dung chính
R
Robot.Edu.VN

Khối lệnh cơ bản

Các nhóm khối lõi của ThingBlock: Sự kiện, Điều khiển, Cảm biến, Các phép toán, Các biến số, Khối của tôi và nhóm Arduino

Các nhóm khối lõi hiện tiếng Việt và giống Scratch. ThingBlock bỏ các nhóm Chuyển động, Hiển thị, Âm thanh của Scratch vì không có sân khấu và nhân vật: mọi thứ diễn ra trên bo mạch.

Ký hiệu trong bảng: Nạp = dùng được khi nạp chương trình xuống ThingBot; Live = dùng được ở chế độ chạy trực tiếp.

Sự kiện

Khối mũ, đứng đầu mỗi chồng khối. Chồng khối không có mũ thì không chạy.

KhốiÝ nghĩaChế độ
khi Arduino khởi độngChạy một lần khi bo bật hoặc vừa nạp xong. Đặt ở đây các khối khởi tạo, gán giá trị ban đầuNạp
vòng lặp ArduinoChạy lặp đi lặp lại mãi sau phần khởi độngNạp
Khi bấm vào lá cờ xanhChạy khi bấm RunLive
khi bấm phím [phím trắng]Chạy khi bấm một phím trên bàn phím máy tính (phím trắng = phím cách)Live

Điều khiển

KhốiÝ nghĩaChế độ
đợi (1) giâyChờ một khoảng thời gian, nhận cả số lẻ như 0.5Nạp, Live
lặp lại (10)Lặp các khối bên trong đúng số lầnNạp, Live
liên tụcLặp mãi mãiNạp, Live
nếu ⟨ ⟩ thìChỉ chạy khi điều kiện đúngNạp, Live
nếu ⟨ ⟩ thì … nếu không thìHai nhánh: đúng làm việc này, sai làm việc kiaNạp, Live
đợi đến khi ⟨ ⟩Chờ tới khi điều kiện đúngNạp, Live
lặp lại cho đến khi ⟨ ⟩Lặp tới khi điều kiện đúng thì thôiNạp, Live
dừng lại [tất cả]Dừng chương trìnhNạp, Live
print (Hello!)In chữ hoặc số ra khung MonitorLive

Ở chế độ nạp, vòng lặp Arduino đã tự lặp mãi nên thường không cần thêm liên tục.

Cảm biến

KhốiÝ nghĩaChế độ
đồng hồ bấm giờSố giây đã trôi qua: khi nạp là tính từ lúc bo bật; ở Live là từ lúc bấm Run hoặc lần đặt lại gần nhấtNạp, Live
đặt lại đồng hồ bấm giờĐưa đồng hồ về 0. Ở chế độ nạp bản 0.4.0, khối này chưa có tác dụngLive
phím … được bấm?, chuột được nhấn?, hỏi … và đợi…Đọc bàn phím, chuột, câu trả lời trên máy tínhLive

Cảm biến thật của robot (khoảng cách, nhiệt độ…) nằm ở nhóm ThingBot và các ngoại vi.

Các phép toán

KhốiÝ nghĩa
( ) + ( ), -, *, /Cộng, trừ, nhân, chia
lấy ngẫu nhiên từ (1) đến (10)Số ngẫu nhiên trong khoảng
( ) > ( ), ( ) < ( ), ( ) = ( )So sánh, cho kết quả đúng/sai
⟨ ⟩ và ⟨ ⟩, ⟨ ⟩ hoặc ⟨ ⟩, không phải ⟨ ⟩Ghép điều kiện
chia lấy dư, làm tròn, [giá trị tuyệt đối] của ( )Phép tính khác
kết hợp, ký tự thứ … của chuỗi, độ dài của, … chứa ký tự …?Làm việc với chữ

Tất cả dùng được ở cả hai chế độ.

Các biến số

Bấm Tạo một biến, đặt tên, rồi dùng:

KhốiÝ nghĩa
đặt [biến] thành ( )Gán giá trị
thay đổi [biến] một lượng (1)Cộng thêm (số âm để trừ)
khối tròn mang tên biếnĐọc giá trị biến

Lưu ý khi nạp chương trình:

  • Lúc tạo biến, ThingBlock hỏi Variable type: Number (số nguyên, mặc định), Decimal (số thập phân), Text (chữ). Chọn Decimal khi cần số lẻ như 0.5.
  • Ở bản 0.4.0, biến Decimal trở lại thành số nguyên khi mở lại dự án từ tệp. Với DHT11 không sao vì cảm biến vốn trả số nguyên.
  • Nên đặt tên biến không dấu (nhietDo) nếu muốn mã C++ ở khung Generated Code dễ đọc. Tên có dấu vẫn chạy, chỉ là bị đổi thành dạng mã hóa.
  • Danh sách (Tạo một Danh sách) chưa dùng được khi nạp ở bản 0.4.0: mã sinh ra không biên dịch được.

Khối của tôi

Bấm Tạo một khối để gom một đoạn chương trình thành khối riêng, ví dụ lái tay. Khối định nghĩa [lái tay] chứa phần thân, còn khối lái tay dùng để gọi ở chỗ khác. Chương trình chính nhờ vậy đọc được như một câu.

Ở chế độ nạp bản 0.4.0, khối tự tạo chưa nhận tham số: tạo khối không có ô nhập.

Nhóm Arduino

Xuất hiện khi đã chọn bo, dùng ở chế độ nạp. Tên khối hiện tiếng Anh:

KhốiÝ nghĩa
set pin (13) mode [OUTPUT]Đặt chế độ chân: OUTPUT (xuất), INPUT (nhận), INPUT_PULLUP (nhận, có điện trở kéo lên trong chip)
digital write pin (13) [HIGH]Xuất mức cao (HIGH) hoặc thấp (LOW) ra chân
read digital pin (2)Đọc mức của chân: 1 hoặc 0
analog write pin (9) value (128)Xuất xung PWM, giá trị 0–255
read analog pin (0)Đọc điện áp dạng số
delay (1000) msChờ theo mili giây

Trên ThingBot, chân IO0 và IO4 trên ThingBotShield là chân tự do để cắm cảm biến (xem nhãn in trên mạch). Đừng dùng chân 8 và 9: đó là đường I2C nối với chip điều khiển động cơ, dùng sai là động cơ, LED, còi ngừng chạy.

Nguồn học liệu: ThingEdu.