Читайте также:
|
|
Мета роботи:
- Створення скриптів, що запускаються кнопками;
- Створення скриптів за умовою.
1. Відкрийте вікно Hopper.
В цьому вікні представлений бункер заввишки 200 пікселів. синій покажчик
- Курсор «прив'язаний» до змінної HopperSetpoint (завдання рівня). Червоний покажчик служить для відображення поточного значення змінної HopperLevel (рівень в бункері).
Запуск конвеєра в подальшому слід «прив'язати» до дискретної змінної Conveyor_on. Конвеєр буде включений / виключений при Conveyor_on = 1/0. Управління значенням змінної Conveyor_on повинно здійснюватися кнопкою Conveyor_on Toggle.
Нижня кришка бункера «прив'язана» до змінної GateCount типу Memory Integer. Повне відкриття (переміщення) кришки - 30 пікселів.
2. При імпортуванні вікна Hopper всі стосовні до цього вікна змінні перетворилися в фіктивні, які слід замінити на звичайні. Натисніть клавішу F2 для виділення всіх об'єктів у вікні і виконайте команду Special / Substitute Tags (заміна змінних).
3. Нажміть Convert, потім Local для перетворення змінних.
Анімацію кнопок HopperLevel
4. Створіть скрипт, що запускається кнопкою «HopperLevel = 0» (Touch Pushbutton Action). Тип скрипта - On Key Down (виповнюється один раз в момент натискання на кнопку) - слід вибрати зі списку.
Натискання кнопки «HopperLevel=0» повинно обнуляти рівень в бункері.
5. Створіть два скрипта Touch Pushbutton Action, що запускаються кнопкою «HopperLevel + 10».
Тип першого скрипта - On Key Down (виповнюється один раз в момент натискання на кнопку). Клацання по кнопці «HopperLevel + 10» повинно викликати збільшення рівня на 10 одиниць.
Тип другого скрипта - While Down (виконується періодично через задані інтервали часу поки натиснута кнопка) - також вибирається з списку, що випадає.
При утриманні кнопки «HopperLevel + 10» рівень повинен збільшуватися на одиницю кожні 1000 мсек (1сек).
6. Перейдіть в середу виконання і перевірте роботу кнопок.
7. Для анімації заповнення бункера створіть два скрипта по умові (Condition Scripts).
Перший скрипт встановлює змінну «Conveyor_on» в 1 (конвеєр включений), коли значення змінної HopperLevel менше, ніж заданий HopperSetpoint (Condition - умова, див. рис. внизу), і привласнює змінної «Conveyor_on» значення 0 (конвеєр вимкнений) при інших умовах.
Клацніть на Special / Scripts / Condition Scripts і створіть скрипт по умові типу On True (виповнюється один раз при переході умови в стан True). Скрипт цього типу включає конвеєр, якщо поточний рівень менше заданого.
Але конвеєр треба зупинити, якщо рівень буде дорівнює або більше заданого (перехід умови в стан False). Для цього стану скрипт виглядає наступним чином:
8. Перейдіть в середовище виконання для перевірки роботи скриптів.
9. Другий скрипт за умовою збільшуватиме значення змінної HopperLevel на 1 кожні 1000 мсек (1 сек.), Якщо змінна Conveyor_on = TRUE (конвеєр включений). Клацніть Script / New, потім Edit / Clear для очистки вікна редактора. Якщо в полі скрипта з яких-небудь умов є текст, очистіть його тією ж командою. Створіть скрипт типу While True (виповнюється безперервно, поки значенням умови є True):
10. Перейдіть в середу виконання для перевірки роботи скриптів. Змініть завдання рівня переміщенням вгору синього покажчика.
11. Нижньої кришці бункера присвоєно властивість Location / Horizontal (горизонтальне переміщення) і «прив'язане» воно до змінної GateCount типу Integer. Кришка закрита при значенні GateCount = 0. Коли GateCount = 30, кришка повністю відкрита. Кнопка Gate Control управляє значенням дискретної змінної Gate.
Створіть скрипт, який відкриватиме кришку бункера (збільшувати GateCount до 30), коли Gate == TRUE, і закривати кришку (зменшувати GateCount до 0), коли Gate == FALSE.
Спостерігати за роботою конвеєра і бункера можна тільки при відкритому вікні Hopper. Тому скрипт, анімує кришку бункера, повинен бути пов'язаний з цим вікном (скрипт рівня вікна - Window Scripts). Його тип - While Showing (виповнюється періодично через задані проміжки часу поки вікно відображається на екрані).
12. Додайте скрипт типу On Show для цього вікна (виповнюється один раз в момент відкриття вікна) для того, щоб всі змінні і кнопки перебували в початковому стані при відкритті вікна Hopper.
13. В InTouch мається набір визначених функцій. Функцію InfoAppActive можна використовувати в скриптах для активізації програми Calculator (калькулятор). Якщо калькулятора немає на екрані, то скрипт запустить його. Інакше, скрипт буде працювати у фоновому режимі.
Створіть скрипт Touch Pushbutton Action типу On Key Down для кнопки «Calculator».
Дата добавления: 2015-08-09; просмотров: 95 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Редактор скриптів | | | Робота 5. АЛАРМ та події |