Mindstorms як рахувати натискання кнопки 1


У Mindstorms робота зі змінними організована якось дуже дико, не те що у LabVIEW, тому іноді навіть елементарні операції можуть викликати проблеми. От наприклад проста задача: виводити на екран кількість натискань якоїсь клавіші (кількість спрацювань тригера або датчика, тощо). Очевидно, що потрібно створити змінну та інкрементувати її значення щоразу коли відбувається подія, яка нас цікавить.

Але елементарна на перший погялд операція вимагає купи роботи:

Підрахунок натискань на кнопку

Підрахунок натискань на кнопку

Для початку нам потрібно зчитати змінну (яка за замовчуванням має значення “0”), далі інкрементувати, тотім записати нове значення у змінну і знову зчитати, цього разу для виводу на екран. Явно надмірно. Крім того, хто пробував програмувати на LabVIEW зрозуміє: довжелезні плахти коду зовсім не сприяють розумінню. На щастя, у Mindstorms можна створювати власні підпрограми. Для цього треба виділити потрібні кубики на блок-діаграмі і у меню вибрати пункт “Инструменты” -> “Конструктор Моего Блока”:

Mindstorms SubVI Creation

Створення підпрограми у Mindstorms

Далі можна налаштувати параметри підпрограми: ввести назву і опис, вибрати іконку, тощо.

Налаштування підпрограми

Налаштування підпрограми

Тиснемо “Завершить” і вуаля: маємо власний елемент у палітрі. Тепер можна використовувати його у інших програмах і не переживати через захаращення блок-діаграми.

Mindstorms підпрограма інкременту

Mindstorms підпрограма інкременту

Але тут виникає один нюанс. Якщо раніше головний цикл програми зупинявся відразу після натискання центральної кнопки джойстика (як вказано в умові виходу з циклу), то зараз наша підпрограма працює фактично у окремому потоці і тому для зупинки циклу потрібно натиснути одночасно і центр джойстика і кнопку на датчику.

Почитайте ще оце:


Залиште коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Думка на тему “Mindstorms як рахувати натискання кнопки