Через тернии к звездам (Или как я стал контроллерщиком) Часть 8.
Часть 8. Интерфейсы.
Всем привет.
Сразу хочу предупредить, что этот пост образовательный. И если вы знакомы с интерфейсами или это скучная тема, то пост можно и не читать вовсе. Запуск ЧПУ станка будет в следующем посте.
Как только я начал увлекаться компьютером. А дело было в начале нулевых. Мне особенного доставляло то, что к компьютеру можно подключать устройства. И причем, не обычные – принтер/сканер/хренир, а именно, вообще не относящиеся к моему понятию компьютерной техники. И чем больше и массивней (пропорционально его отдаленности от ПК) было устройство – тем больший восторг я испытывал. Например аппарат УЗИ и тому подобное. И поэтому позже, когда я подключил к ПК рабочий ЧПУ станок – мое восхищение было сложно скрыть. Огромная машина подключена 8 жильным проводом. А самое интересное – компьютер её узнал и встретил как старого друга. Тихо загудели двигатели, и зашумели вентиляторы для охлаждения. Раздался щелчок и станок поехал на обнуление.
Тема подключения и взаимодействия не давала мне покоя. И я узнал, все что нужно знать об одной из самых основных составляющих любого контроллера – его интерфейсах.
Каждый день мы сталкиваемся с различными интерфейсами – будь то рабочий стол на компьютере или терминал по оплате мобильника. Это графические интерфейсы. Именно благодаря им, компьютером и терминалами могут пользоваться практически все. Именно благодаря графическим интерфейсам все это плотно вошло в нашу жизнь и получило повсеместное распространение. А в нашем сознании плотно засело слово – интерфейс.
На самом деле, люди с незапамятных времен взаимодействуют с техногенным окружением с помощью интерфейсов. Да, даже у бабки в деревне на радиоле он есть. В квартире – обычный выключатель это тоже интерфейс.
Ну про аналоговые и механические интерфейсы можно рассуждать до бесконечности.
Нас же интересуют интерфейсы цифровые. (программные и аппаратные)
Оказалось, чтобы одно устройство управляло другим – ему как и человеку необходим интерфейс. А язык по которому устройства взаимодействуют между собой называется – протоколом. Пример прост. Те кто вырос в 80ых – начале 90ых поймут. В то ламповое время, когда пультов у теликов практически не было. Ребенок (или самый младший в семье) выполнял его функцию. Родители (старший брат/сестра) просили переключить канал (передали протокол), мы его обработали и выполнили. То есть вступили во взаимодействие с телевизионным интерфейсом. Вот именно по такому принципу работают интерфейсы в контроллерах. Только выглядят они, конечно же иначе.
Чем проще и понятней интерфейс – тем быстрее и качественней происходит взаимодействие. Ведь микропроцессоры у контроллеров – по сути то же, что и наши мозги. Они рассчитывают предстоящую операцию. Поэтому главное во взаимодействии машин – простота их интерфейсов. Соответственно одна из основных задач контроллерщика – упростить интерфейс.
Существует такая профессия – наладчик. Это тот человек, который позволяет подружиться различным интерфейсам. Ведь протоколы не универсальны. Они всего лишь языки, а языки бывают разные. Все как у людей вообщем-то. Поэтому наладчики это такие своеобразные переводчики.
И теперь с появлением графических оболочек у интерфейсов, практически любой человек может управлять сложной техникой.
Как только я начал собирать свои первые контроллеры. Я обратил внимание на то, как они взаимодействуют с компьютером.
Как правило их соединение производилось, через порт Lpt или Usb. Это далеко не все порты существующие в мире.
Как бы не страшна была участь крутить штекер Юсб как минимум два раза, пока он не попал в порт. Все же это самый удобный и адекватный порт соединения. Кто-то ошибочно называет Юсб – интерфейсом. На самом деле это неверно. Юсб это именно порт, который соединяет интерфейсы. Хотя его можно назвать интерфейсным портом.
Первые мои контроллеры были оснащены Lpt портом. А это значит, что нам нужен комп под управлением, как максимум Хрюшки. Потому как Lpt безнадежно устарел. С помощью драйверов конечно можно подружить и с 7ркой, но драйвер придется компилировать самостоятельно. И работа будет нестабильна.
Выделять по компьютеру на каждый контроллер довольно накладно. Поэтому я быстро отошел от устаревшего порта и начал активно изучать Usb. Документации было достаточно.
Еще одна причина по которой я осваивал Юсб была в том, что к компьютеру при желании можно подключить великое множество контроллеров. И это действительно универсальный порт. Так как по нему так же можно подавать питание для них. Им что много надо что ли? 5 вольт достаточно, а именно столько дает юэсбишка.
Возможно ли управление через Юэсби? Само собой возможно. Почти все устройства периферии управляются именно через этот порт.
И тут я узнал, что это плохо. Не буду вдаваться в подробности. Если кому-нибудь надо, могу рассказать позже. Но Юсб совсем не годиться для контроллеров. Он годиться скорей для того, чтобы контроллером был компьютер, а устройством управление – всего лишь развязки передачи и обмена.
Это не предел наших мечтаний. И я выбрал принципиально новый для себя порт – Ethernet.
Это же порт для Интернета?
Верно, а вообще это порт для скоростной передачи данных.
А в следующем посте, я вернусь к станку ЧПУ и мы его даже запустим. Образовательных постов пока хватит.