Удовольствие, которое мы испытываем при переключении тумблеров, вращении ручек механизмов или нажимая кнопки, можно описать так - ощущение причастности. Мы можем и не запомнить, как устройство отреагировало на то или другое действие, но спустя длительный срок, мы точно будем помнить эмоции, которые вызвало устройство - работая с ним.
В большинстве своем, мы никогда не задумываемся о причинах и природе эмоций, порождаемых взаимодействием между нами и техникой.
Когда устройством пользоваться легко и непринужденно - это хорошее устройство. Но когда устройством пользоваться не удобно и сложно, то каким бы ни было это устройство хваленым и навороченным - увы, больше пару раз вы не захотите им пользоваться. Вероятно вы его выбросите, продадите, отдадите или положите в шкаф до лучших времен.
Каждый из нас запускал фейерверк на Новый год или День Рождения. Сложно почувствовать то, что чувствует человек поджигающий фитиль салюта если ты стоишь рядом. Только ощущение причастности дарит нам незабываемы эмоции.
Именно поэтому так важно знать и понимать, что такое интерфейс.
Начать бы хотелось с очень распространенного и модного сегодня слова -"объект".
Есть объекты, которые мы можем потрогать руками, а есть объекты, которые скрыты от наших глаз (программный объект).
Спиритических сеансов тут не будет.
Мы же будем рассматривать объекты, которые могут дать нам обратную связь своим поведением, при воздействии на него. Своего рода, причина-следственная связь между вами и устройством. Поэтому, важно заранее знать об объекте его предназначение (что делает, какую работу выполняет, для чего нужен) и каким образом сделать так, чтобы объект сделал то, для чего он предназначен.
Другими словами, нам нужно достучаться до объекта, обратиться к нему через его интерфейс. Тот самый набор кнопочек, переключателей, "ниточек" за который мы можем "дергать", чтобы получить результат работы устройства.
Если это программный объект, то мы можем отправлять и получать сообщения, принимать или отправлять различные данные, хранить их или делать одновременно и то и другое.
Физические объекты могут перемещаться, излучать свет, воспроизводить звуки и многое другое.
У объектов, с которыми мы будем сталкиваться в Ардуино, можно выделить три основных составляющих интерфейса:
- Физический интерфейс;
- Программный интерфейс;
- Электрический интерфейс.
Физический интерфейс - это те самые переключатели, кнопки, датчики, механические и электронные ключи, провода и разъемы, все это физические интерфейсы. Все объекты, соединенные между собой в сеть, соединены через физические интерфейсы. Есть конечно и программные объекты не имеющие физических интерфейсов, но и они созданы на основе умозрительных заключений людей, которые основываются на прообразе работы физических сетей.
К примеру нам сложно представить ПК без монитора, мыши и клавиатуры, а именно так мы его и представляем, когда нам говорят про компьютер. Ведь именно через эти устройства мы соприкасаемся с возможностями, которые дает нам ПК. Однако сам ПК представляет из себя куда более сложное устройство чем просто набор устройств на столе.
Программный интерфейс - это команды. Функции или методы, кто как любит, которые мы посылаем объекту, чтобы тот выполнил свою работу, свое предназначение, как-то отреагировал на наше программное воздействие. Отчасти программный интерфейс у разных приборов, устройств, датчиков, плат и др., очень разный и сложный. Да, бывает так, что приходится и дорабатывать "напильником" не без этого, чтобы получить хоть что-то разумное на выходе у устройства. Все приходит со временем. Если что-то сложно и не выходит разобраться с той или иной функцией устройства, следует не спеша повторить на разных примерах применение этой функции. Только тогда приступать к изучении остальных. Так вы полностью изучите программный интерфейс объекта.
Электрический интерфейс - сила импульсов электрической энергии, в которых закодированная информация передается от объекта к объекту. Тут в силу вступают законы физики в полной мере. Примером может служить ВОЛС (оптика), для передачи данных на огромные расстояния по оптическому волокну за счет световых волн, инфракрасный передатчик, Bluetooth, WiFi сети, и все возможные беспроводные передатчики и др.
В любом случае, чтобы наш объект реагировал на наше воздействие мы должны наверняка знать, через какой интерфейс к нему можно обратиться, чтобы достучаться до его управляющего устройства.
Интерфейсов очень много. Есть распространенные, есть специфические, есть настолько индивидуально применяемые, что используют их только в космосе, чтобы сохранить место, уменьшить массу первой ступени ракеты и другие важные характеристики. Поэтому так много объектов с таким большим числом интерфейсов, через которые мы с вами можем "дружить" с ними ни в чем себе не отказывая, передавая команды и получая данные.
Спасибо что дочитали до конца!
Подписывайтесь на канал РОБОТИП впереди много интересного!