1. Nguyên lý phát hiện hành vi của người dùng
Đối với các ứng dụng hiện đại, việc tương tác với người dùng đã trở nên ngày càng thông minh. Cụ thể, trên MicroBit, người dùng có thể lắc tay, nghiêng sang trái hay sang phải để tạo ra các sự kiện gửi đến MicroBit.
Nguyên lý để phát hiện ra hành vi của người dùng trên MicroBit được dựa trên cảm biến gia tốc, có tên tiếng Anh là Accelerometers. Quy tắc hoạt động của cảm biến này có thể được minh họa như Hình 1, nó bao gồm 2 phần: khoang chứa hình trụ được gắn liền vào vật thể mà chúng ta cần đo gia tốc, còn quả bóng là vật có thể di chuyển một chiều bên trong khoang chứa. Khi chúng ta di chuyển khoang chứa, quả bóng cũng sẽ di chuyển bên trong khoang chứa, khiến lò xo co hoặc dãn ra. Dựa vào độ co dãn của lò xo, chúng ta có thể đoán biết được lực và gia tốc của chuyển động.
Hình 1: Nguyên lý hoạt động của cảm biến gia tốc
Để có thể đo đạt được trong không gian 3 chiều, mô hình trên được nhân lên gấp 3, tương ứng cho 3 trục không gian X, Y và Z. Tuy nhiên, tất cả các nguyên lý phức tạp này đã được MicroBit đơn giản đi rất nhiều bới các câu lệnh sự kiện, sẽ được trình bày trong phần tiếp theo.
2. Các câu lệnh phát hiện hành vi
Tất cả các câu lệnh để tương tác với hành vi của người dùng được hỗ trợ sẵn bởi MicroBit được trình bày ở Hình 2. Chỉ bằng một câu lệnh on shake trong phần Input, đã có rất nhiều hành vi được hỗ trợ sẵn cho chúng ta. Trong phần tiếp theo, một số lựa chọn thông dụng cho câu lệnh on shake sẽ được trình bày.
Hình 2: Các câu lệnh phát hiện hành vi
3. Hành vi on shake
Đây là hành vi căn bản, và cũng là hành vi mặc định của câu lệnh on shake. Khi chúng ta lắc nhẹ mạch MicroBit, sự kiện này sẽ xảy ra. Chúng ta có thể hiện thực một chương trình nhỏ để thử nghiệm sự kiện này như Hình 3. Chương trình này hoàn toàn có thể mô phỏng được mà không cần nạp trực tiếp vào mạch MicroBit. Chúng ta chỉ cần rê chuột qua lại trên mạch MicroBit mô phỏng, thì sự kiện on shake sẽ xảy ra.
Hình 3: Chương trình thử nghiệm sự kiện on shake
Bài tập: Giáo viên cho học sinh hiện thực lại chương trình trên và giải thích chức năng của nó.
Trả lời: Khi lắc mạch, sẽ hiển thị một icon trong 2 giây.
4. Các hành vi khác
Trong phần này, ý nghĩa của các hành vi khác sẽ được tóm tắt lại trong bảng bên dưới. Tuy nhiên, để có thể hiểu chức năng của nó cặn kẽ hơn, chúng ta chỉ cần hiện thực một chương trình nhỏ như Hình 3 ở trên.
Bài tập
1. Hãy hiện thực chương trình hiển thị số 1, 2, 3 và 4 trên màn hình hiển thị tương ứng với 4 sự kiện màn hình hiển thị hướng lên, xuống, nghiêng sang trái và sang phải. Chương trình gợi ý như sau:
Hình 4: Chương trình gợi ý
2. Hãy hiện thực một chương trình “Xúc xắc điện tử”: Lắc mạch MicroBit sẽ hiển thị ngẫu nhiên 1 con số từ 1 đến 6.
Gợi ý: Học sinh sử dụng câu lệnh lấy số ngẫu nhiên ở Hình 5.
Hình 5: Lệnh lấy giá trị ngẫu nhiên
Đáp án:
Hình 6: Đáp án cho chương trình "Xúc xắc điện tử"
3. Hãy cải tiến chương trình “Xúc xắc điện tử”, thay vì hiển thị các con số từ 1 đến 6, hãy hiển thị một dấu chấm, hai dấu chấm, … trên màn hình như 1 xúc xắc bình thường.
Gợi ý:
- Tạo một biến số lưu giá trị số ngẫu nhiên
- Sử dụng thêm câu lệnh điều kiện trong mục Logic.
Các bước chi tiết để hiện thực bài tập này như sau:
Bước 1: Vào mục Variables (1), nhấn vào Make a Variable (2)
Hình 7: Tạo một biến số cho chương trình
Bước 2: Đặt tên cho biến (ví dụ như randomValue), rồi nhấn OK.
Bước 3: Hiện thực chương trình bằng cách sử dụng câu lệnh if – else trong mục Logic
Hình 9: Đáp án gợi ý cho chương trình "Xúc xắc điện tử"
Bài tập về nhà
Hãy hiện thực trò chơi “Oẳn tù tì” điện tử bằng cách sử dụng mạch MicroBit. Mạch sẽ hiển thị các biểu tượng ngẫu nhiên 1 trong 3 hình ảnh Búa - Bao - Kéo.
Gợi ý:
- Lấy ngẫu nhiên từ 1 đến 3: 1 – Búa, 2- Bao, 3 – Kéo - Sử dụng câu lệnh show icon Đáp án:
Hình 10: Đáp án gợi ý cho chương trình "Oẳn tù tì"
Hãy hiện thực một chương trình đếm số bước chân khi di chuyển. Mạch MicroBit sẽ được gắn vào chân (không để dưới đế giày!!!!). Bình thường, mạch không hiển thị gì cả, chỉ khi nhấn vào nút A, mạch sẽ hiển thị lên số bước chân đã di chuyển.
Gợi ý:
- Tạo một biến để lưu trữ số bước chân (counterStep)
- Tăng biến này lên 1 trong sự kiện on shake
- Hiển thị ra khi nhấn nút A
Đáp án:
Hình 11: Chương trình đếm số bước chân di chuyển
Học sinh cải thiện bài tập trình, khi nhấn vào nút B, mạch MicroBit sẽ hiển thị quãng đường đã di chuyển.
Gợi ý: Sử dụng số bước chân, nhân với khoảng cách gần đúng của một bước chân (khoảng 0.8m)
Đáp án:
Hình 12: Chương trình đếm số bước chân và quãng đường đã di chuyển