Micro:Bit - Bài 6. Tương tác giữa MicroBit và hành vi người dùng

 

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.

Câu lệnh

Chức năng

 

Ở góc bên trái của mạch MicroBit có một Logo, khi Logo này hướng lên trên, sự kiện logo up sẽ xảy ra

 

Tương tự như câu lệnh ở trên, sự kiện này xảy ra khi logo hướng xuống dưới

 

Trên mạch MicroBit có 1 màn hình gồm 25 đèn hiển thị. Khi màn hình này hướng lên trên, sự kiện screen up xảy ra

 

Ngược lại với sự kiện screen up, sự kiện này xảy ra khi màn hình hiển thị úp xuống

 

Sự kiện này xảy ra khi chúng ta hơi nghiêng mạch về bên trái

 

Sự kiện này xảy ra khi chúng ta hơi nghiêng mạch về bên phải

 

Khi thả mạch MicroBit rơi tự do, sự kiện này sẽ được gọi

 

Nhóm sự kiện cuối cùng mô phỏng một va chạm. Nó cũng tương đương như việc chúng ta giật mạnh tay mạch MicroBit rồi cho nó dừng lại đột ngột. Các thông số 3g, 6g và 8g tượng trưng cho mức độ dừng lại đột ngột của mạch MicroBit.

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)

A screenshot of a phone

Description automatically generated

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:

A screenshot of a computer

Description automatically generated

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


Đăng nhận xét

Mới hơn Cũ hơn
Responsive Advertisement
Responsive Advertisement4