Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Разработка киберфизических систем на основе микроконтроллеров. Учебное пособие
.pdf
Лекция 2. Интернет вещей
11
привычки и подстраиваются под них. Например, если вы просыпаетесь в
определенное время, то вас будет ждать теплый кофе с готовой яичницей.
Другие определяют «интернет вещей» как набор ключевых техноло-
гий, необходимых для реализации самой концепции «интернета вещей».
Примером могут служить датчики – т.е. «вещи», способные собирать данные. Это и технологии беспроводной связи для передачи этих данных, это
и облачные технологии, которые применяются для хранения и обработки
данных, а также искусственный интеллект, безопасность и многое другое.
Как возник Интернет Вещей? Считается, что первым термин «Интер-
нет Вещей» предложил Квин Эштон в 1999 г. во время презентации в компании Procter&Gambel и называл он тогда немного иначе, а именно Internet
for Things и вкладывал в это понятие возможность наделять компьютеры
дополнительной информацией, собранной при помощи интеллектуальных
датчиков. После появления термина в 1999 г. началось относительно медленное развитие данного направления.
В 2003 г. появилась первая аппаратная платформа «интернета ве-
щей» – итальянского происхождения платформа Arduino. По сути, это одноплатный компьютер, связывающий датчики и устройства по сети и
управлять ими, а также взаимодействовать со средой.
В 2007 г. появляется онлайн-сервис puchube. Он служит для сбора и
визуализации данных в интернет. Это решение позволило соединить данные от множества датчиков и платформ Arduino по всему миру в один сервис, при помощи которого стало возможным собирать и обрабатывать данные с удаленных устройств и предоставлять новые сервисы, например, погодные.
В 2008–2009 гг. компания Cisco сделало заявление, что число
устройств, подключенных к интернет, превысило численность населения
Земли.
В 2010–2011 гг. появились знаковые научные проекты. IoT-A предложил модель архитектуры «интернета вещей» с описанием всех функциональных блоков. В 2011 г. проект iCore предложил ряд концепций и алгоритмов для разработки «умного интернета вещей» с рядом самонастраивающихся функций, которые максимально могли обеспечить запросы пользователя [2].
Итак, вы узнали о том, что такое «интернет вещей».

1. Основы проектирования киберфизических систем
12
Контрольные вопросы
1. Какие страны активно ведут разработки в области «интернета ве-
щей», согласно данной лекции?
2. Какие два основных определения «интернета вещей» приводятся в
тексте?
3. Какие технологии считаются ключевыми для реализации концепции
«интернета вещей»?
4. Кто и когда предложил термин «интернет вещей» и какую идею он
вкладывал в это понятие?
5. Какая аппаратная платформа «интернета вещей» появилась в 2003 г.
и откуда она происходит?
6. Что представляет собой онлайн-сервис puchube, появившийся в
2007 г.?
7. Какое заявление сделала компания Cisco в 2008–2009 гг. относи-
тельно числа устройств, подключенных к интернету?
8. Какие знаковые научные проекты по интернету вещей были запу-
щены в 2010–2011 гг. и что они предложили?
9. Какие примеры использования интернета вещей приводятся в тек-
сте?
10. Каковы основные этапы развития концепции интернета вещей,
описанные в лекции?
Лекция 3. Человекомашинные интерфейсы (ЧМИ)
в киберфизических системах
Человекомашинные интерфейсы (ЧМИ) в киберфизических системах
представляют собой методы и технологии, которые обеспечивают взаимодействие между человеком и машиной в цифровой и физической среде. Целью ЧМИ является обеспечение удобного и эффективного взаимодействия
между человеком и автоматизированными системами, такими как роботы,
автономные транспортные средства, медицинское оборудование и другие
устройства. Важными аспектами ЧМИ являются удобство использования,
безопасность, эргономика и возможность адаптации к различным потребностям пользователей.

Лекция 3. Человекомашинные интерфейсы (ЧМИ) в киберфизических системах
13
ЧМИ позволяют людям управлять и контролировать различные
устройства, системы и программное обеспечение с помощью графического
интерфейса, звука, жестов, голосовых команд и других методов.
Примеры человекомашинных интерфейсов включают в себя сенсорные экраны на мобильных устройствах, голосовые ассистенты (например,
Siri, Google Assistant), виртуальную реальность (VR) и дополненную реальность (AR) устройств, умные домашние системы, автомобильные интерфейсы и другие. ЧМИ играют важную роль в повышении удобства использования техники, улучшении эффективности работы и обеспечении безопасности пользователей.
В разработке человекомашинных интерфейсов могут возникать следующие основные проблемы.
1. Сложность использования. Интерфейс должен быть интуитивно
понятным и легким в использовании для пользователей всех уровней навыков. Сложность интерфейса может привести к ошибкам пользователя,
недовольству и отказу от использования продукта.
2. Неудовлетворение пользователей. Если интерфейс не соответ-
ствует ожиданиям пользователей или не удовлетворяет их потребности, это
может привести к негативному опыту использования и низкой оценке продукта.
3. Недостаточная обратная связь. Пользователи должны получать
обратную связь о своих действиях и состоянии системы. Недостаточная
обратная связь может привести к недопониманию и путанице.
4. Совместимость с различными устройствами. С увеличением раз-
нообразия устройств, с которыми пользователи взаимодействуют (смартфоны, планшеты, ноутбуки, умные часы и т.д.), важно обеспечить совместимость интерфейса с различными платформами.
5. Доступность для всех пользователей. Интерфейс должен быть до-
ступен для пользователей с ограниченными возможностями (например,
слабовидящие, люди с нарушениями слуха или двигательными нарушениями).
6. Безопасность и конфиденциальность данных. Важно обеспечить
защиту данных пользователей и предотвратить возможные угрозы безопасности при использовании интерфейса.

1. Основы проектирования киберфизических систем
14
Решение этих проблем требует тщательного анализа потребностей
пользователей, тестирования интерфейсов на предмет удобства использования и постоянного совершенствования дизайна и функциональности.
Перспективы и будущее направление в развитии человекомашин-
ных интерфейсов включают в себя следующие тенденции.
1. Искусственный интеллект (AI) и машинное обучение (ML). Ис-
пользование AI и ML в разработке интерфейсов позволит создавать более
интуитивные и адаптивные системы, способные предсказывать потребности пользователей и автоматически адаптироваться к ним.
2. Расширенная реальность (AR) и виртуальная реальность (VR).
Интеграция AR и VR в интерфейсы позволит создавать более иммерсивные
(т.е. обеспечивающие полный эффект присутствия, погружающие в (виртуальную) среду) и визуально привлекательные пользовательские интерфейсы, открывая новые возможности для взаимодействия с информацией и
контентом.
3. Голосовые интерфейсы и управление жестами. Развитие техно-
логий распознавания речи и жестов позволит создавать более естественные
и удобные способы взаимодействия с устройствами, особенно в условиях,
когда руки заняты.
4. Биометрическая аутентификация. Использование биометриче-
ских данных (например, сканеров отпечатков пальцев, распознавание лица)
для аутентификации пользователей повысит уровень безопасности и удобства использования интерфейсов.
5. Интернет вещей (IoT). Интеграция человеко-машинных интерфей-
сов с устройствами IoT позволит создавать умные и автоматизированные
системы, которые будут предсказывать и реагировать на потребности пользователей.
6. Персонализированные интерфейсы. Развитие технологий анали-
тики данных позволит создавать персонализированные интерфейсы, учитывающие индивидуальные предпочтения и потребности пользователей.
Эти тенденции указывают на то, что будущее человекомашинных
интерфейсов будет направлено на создание более удобных, интуитивных,
безопасных и персонализированных пользовательских интерфейсов,
которые будут лучше соответствовать потребностям современного пользователя.

Лекция 3. Человекомашинные интерфейсы (ЧМИ) в киберфизических системах
15
Приведем несколько примеров человекомашинных интерфейсов,
которые можно реализовать на микроконтроллерах.
1. LCD дисплей с кнопками. Вы можете подключить текстовый или
графический LCD дисплей к микроконтроллеру для вывода информации
пользователю. Дополнительно можно добавить кнопки для ввода данных
или управления.
2. Сенсорный экран. Используйте сенсорный экран (например, рези-
стивный или ёмкостный) для взаимодействия пользователя с устройством.
Микроконтроллер может обрабатывать касания и жесты для управления
функциями.
3. Клавиатура и мышь. Подключите клавиатуру и мышь к микро-
контроллеру для ввода данных и управления. Это может быть полезно, если вы создаете устройство с интерфейсом, напоминающим компьютер.
4. Индикаторы и светодиоды. Используйте светодиоды или другие
индикаторы для отображения состояния системы или данных. Например,
светодиоды могут мигать или менять цвет в зависимости от определенных
условий.
5. Звуковые сигналы. Добавьте динамик для воспроизведения звуко-
вых сигналов или мелодий. Это может быть полезно для предупреждений
или обратной связи от устройства.
Это лишь некоторые примеры человекомашинных интерфейсов, которые можно реализовать на микроконтроллерах. Комбинируя различные
элементы интерфейса, можно создать удобные и интуитивно понятные
способы взаимодействия пользователя с устройством.
Существует множество методов и технологий, которые обеспечивают
взаимодействие между человеком и машиной в цифровой и физической
среде. Ниже приведены некоторые из них.
1. Интерфейсы пользователя (User Interfaces):
- графический пользовательский интерфейс (GUI) позволяет визу-
ально взаимодействовать с устройством через графические элементы,
кнопки, меню и т.д.;
- сенсорные экраны позволяют пользователю управлять устройством
прикосновениями к экрану;
- голосовые интерфейсы позволяют пользователю управлять устрой-
ством голосовыми командами;

1. Основы проектирования киберфизических систем
16
- виртуальная реальность (VR) и дополненная реальность (AR) поз-
воляют создавать интерактивные среды для взаимодействия с устройством.
2. Датчики и детекторы:
- движение. Датчики движения позволяют устройству реагировать на
жесты или движения пользователя;
- освещенность. Датчики освещенности могут использоваться для
автоматической регулировки яркости дисплея или других функций;
- температура и влажность. Датчики температуры и влажности могут
использоваться для автоматического управления климатом.
3. Машинное обучение и искусственный интеллект:
- распознавание образов позволяет устройству распознавать лица,
объекты, жесты и т.д.;
- прогнозирование поведения может использоваться для предсказа-
ния действий пользователя и предоставления персонализированных рекомендаций.
4. Беспроводные технологии:
- Bluetooth, Wi-Fi позволяют беспроводно связывать устройства
между собой для передачи данных и команд;
- NFC (Near Field Communication): позволяет устройствам обмени-
ваться данными на коротком расстоянии.
5. Робототехника:
- управление роботами позволяет пользователю программировать и
управлять роботами для выполнения различных задач.
Это лишь небольшая часть методов и технологий, которые обеспечивают взаимодействие между человеком и машиной в цифровой и физической среде. С развитием технологий появляются новые способы взаимодействия, делая процесс более удобным и эффективным.
Контрольные вопросы
1. Что представляют собой человекомашинные интерфейсы (ЧМИ) в
киберфизических системах?
2. Какие цели преследуются при разработке ЧМИ?
3. Какие аспекты являются важными при создании ЧМИ?
4. Какие методы взаимодействия между человеком и машиной исполь-
зуются в ЧМИ?

Лекция 4. Как работают вычислительные средства киберфизических системах
17
5. Какие примеры человекомашинных интерфейсов можно назвать?
6. Какие основные проблемы могут возникнуть при разработке ЧМИ?
7. Какие тенденции будущего развития человекомашинных интерфей-
сов можно выделить?
8. Какие технологии (например, AI, AR, VR, голосовые интерфейсы)
могут повлиять на развитие ЧМИ?
9. Почему важно обеспечить доступность интерфейсов для пользова-
телей с ограниченными возможностями?
10. Какие меры безопасности и конфиденциальности данных следует
учитывать при разработке ЧМИ?
Лекция 4. Как работают вычислительные средства
в киберфизических системах
Потоки информации являются такими же важными, как и сырьевые и
товарные потоки. Все уже привыкли, что начальными и конечными пунктами таких потоков являются компьютеры.
Компьютер – буквально вычислитель, т.е. устройство, предназначен-
ное для производства потока вычислений. Для большинства людей вычисления связаны с математикой, формулами и другими малоприятными вещами. Поэтому основная масса людей воспринимает современный компьютер как «черный ящик», который непостижимым образом может творить
чудеса.
Принцип действия компьютера – это уже не элемент технических зна-
ний, а элемент общей культуры современного человека. Действительно, в
наше время важно знать, на какой базе основана наша возможность связи
друг с другом, цифрового творчества, управления на расстоянии, навигации и, наконец, и вычислений.
Вычислительная направленность компьютера далеко не главная. Ос-
новополагающий принцип здесь – программное управление (принцип фон
Неймана). Этот принцип позволяет вам заставить неодушевленный кусок
железа выполнять вашу волю: рисовать, вытачивать детали, управлять
квадрокоптером, сочинять стихи и музыку, исполнять музыку и многое
другое. Это покажется чудом, но все эти вещи компьютер может делать, в
сущности обладая весьма простым набором технических средств и элементарных функций.

1. Основы проектирования киберфизических систем
18
Попробуем далее показать устройство компьютера на базе «не вычислительного» применения. При этом будем максимально строго придерживаться (даже в терминологии) устройству «настоящего» компьютера.
Итак, как работает компьютер? Компьютер подобен ограниченному,
но очень педантичному исполнителю, который последовательно и точно
выполняет последовательность весьма простых указаний (команд). Такая
последовательность команд называется программа. Например, как для непонятливого человека выглядит программа «выпей воды».
1. Открыть холодильник.
2. Со второй полки холодильника, начиная сверху взять бутылку.
3. Закрыть холодильник.
4. Открыть посудный шкаф.
5. С первой полки посудного шкафа, начиная сверху взять стакан.
6. Поставить стакан на стол.
7. Открыть бутылку.
8. Налить в стакан 150 г из бутылки.
9. Выпить содержимое стакана.
10. Если жажда осталась, то перейти к команде 8, если нет, то перейти
к следующей команде.
11. Закрыть бутылку.
12. Открыть холодильник.
13. Поставить бутылку на вторую полку холодильника, начиная
сверху.
14. Закрыть холодильник.
15. Поставить стакан в мойку.
Эта шутливая программа на самом деле имеет все черты настоящей
программы, есть даже такой элемент, как цикл, т.е. повторяющаяся последовательность действий (команды 8–10). Мы написали первую программу
без использования математики, без знания языков программирования и
устройства компьютера!
Но человек как исполнитель весьма сложный и не очень надежный механизм. Человек может устать, ошибиться (неправильно выполнить команду) и результат либо не будет достигнут, либо в результате выполнения
программы будет не тот результат, на который рассчитывал автор про-

Лекция 4. Как работают вычислительные средства в киберфизических системах
19
граммы (например, представьте себе, что в процессе выполнения программы человек забыл выполнить команду 8).
Поэтому в качестве исполнителя программы обычно используют спе-
циальное устройство-автомат. При этом это устройство совсем не обязательно электронное. Автомат может быть: механическим, пневматическим,
гидравлическим и т.п. Главное – чтобы он мог выполнять программу, состоящую из команд!
Представим себе, что у нас есть компьютер, ориентированный на ре-
шения задач вышивания. С точки зрения профессиональной швеи он мало
что умеет (всего 9 операций):
переход на адрес ПП: Оп1;
стежок вправо;
стежок вниз;
иглу в клетку: по горизонтали – Оп1, по вертикали – Оп2';
шаг вправо;
шаг вниз;
если Оп1 > 0, то переход на Оп2;
увеличить содержимое ячейки ПД с адресом Оп1 на единицу;
записать число Оп2 в ячейку ПД с адресом Оп2.
Для всестороннего исследования работы этого компьютера-швеи на
обычном персональном компьютере разработана его программная модель
(ее называют программным эмулятором ).
Основные узлы компьютера:
память программ (ПП);
память данных (ПД);
счетчик команд (СК);
регистр команды (РгК);
устройство управления компьютером (УУ);
устройство выполнения команды (УВК).
Память программ представляет собой последовательность ячеек с
индивидуальным номером (адресом), в каждой из которых хранится одна
команда.
Память данных представляет собой последовательность ячеек с индивидуальным номером (адресом), в каждой из которых хранится одна команда.

1. Основы проектирования киберфизических систем
20
Счетчик команд – это устройство, в котором хранится адрес той ко-
манды, которая в настоящее время выполняется в компьютере.
Устройство выполнения команды – это устройство, которое выпол-
няет основные функциональные команды, например, для компьютера вычислительного назначения это арифметическо-логическое устройство
(АЛУ), а в нашем случае – механизм перемещения и управления иглой.
Регистр команд – это устройство, в котором хранится команда, кото-
рая в настоящее время выполняется в компьютере.
Устройство управления компьютером – это дирижер, который син-
хронизирует работу всех блоков и узлов компьютера.
УУ все время выполняет простую последовательность действий, кото-
рая называется цикл выполнения команды.
1. Извлечь из ячейки ПП с адресом, хранящимся в СК команду и по-
местить ее в РгК.
2. Выполнить КОП команды в устройстве выполнения команды (если
необходимо) или изменить содержимое ячейки ПД.
3. Для всех команд, кроме команд переходов, – увеличить СК на еди-
ницу, для безусловного перехода загрузить в СК содержимое ОП1, для
условного перехода – загрузить в СК содержимое ОП1, если содержимое
ОП2 больше нуля, увеличить СК на единицу, если содержимое ОП2 меньше или равно нулю.
Элементы цикла 1 и 2 интуитивно понятны, для всех обычных команд
в элементе 3 происходит просто наращивание СК (далее выполняется следующая команда из ПП). В случае программных переходов все сложнее:
в команде безусловного перехода в СК загружается адрес ПП, в ко-
тором хранится команда, на которую нужно перейти (этот адрес хранится в
поле ОП1 команды)
в команде условного перехода в СК загружается адрес перехода
(этот адрес хранится в поле ОП1 команды) только в том случае, если содержимое ячейки памяти данных с адресом ОП2 больше нуля, а если условие не выполняется, то выполняется следующая команда (т.е. СК увеличивается на 1).
Компьютер имеет ограниченный набор команд, причем каждая коман-
да состоит из полей (от 1 до 3). Каждое поле команды имеет свое назначение и кодируется числом.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
