Гвоздь в Интернете

Год назад, когда строители делали ремонт в квартире, я уговаривал их не повредить кабель, которым компьютер подключен к Интернету. Они соглашались, делали вид, что внимательно относятся к этой проблеме, но закончилось все, как это выяснилось через год, гвоздем в кабеле.

Внешне повреждение выглядело так, как будто кабель не подключен к коммутатору провайдера. Но специалист, которого я вызывал, не обнаружил отсутствие подключения. Появилось предположение, что кабель поврежден, но единственное, чем мог мне помочь провайдер – это заменить кабель полностью, что не устраивало меня, поскольку тянуть его предстояло по всей квартире. Пришлось мне самому разбираться с повреждением, что навело меня на мысль обсудить, конечно с помощью программ EDA, вопрос об отыскании повреждения в компьютерном кабеле. У меня это кабель UTP CAT5. Что означает, несколько витых пар без экрана с достаточно толстыми жилами.

Первое, что мне вспомнилось относительно кабеля, это то, как я видел однажды «прозвонку» такого кабеля специалистами. На одном конце кабеля была подключена коробочка с разъемом и светодиодами и надписью Master, на другом похожая коробочка с надписью Slave. Когда устройство включалось, светодиоды по очереди загорались, что, надо полагать, свидетельствовало о правильной распайке кабеля.

Рассмотрим, что можно сделать, чтобы сделать такое устройство. Первое, что приходит в голову – использовать десятичный счетчик (выводы активизируются в порядке от 1 до 10), тактовый генератор с секундным периодом (например, на таймере 555) и светодиоды, установленные в двух коробочках, разделенных кабелем с витыми парами (в программе KTechlab):




Рис.1.46. «Прозвонка» компьютерного кабеля в Ktechlab

На рисунке это плохо заметно, но при запуске режима моделирования светодиоды розовеют. Сгоряча решив, что так «и положено», я «подумав над непродуманным решением», меняю значение резисторов с 500 Ом на 100 Ом. В реальной схеме при напряжении питания 5 В ток через светодиоды будет порядка 1 мА. При таком токе реальные светодиоды будут светиться очень слабо. Что же теперь покажет программа Ktechlab?



Рис.1.47. Изменения после замены резисторов в программе Ktechlab

Вот как полезно, оказывается, подумать. И как же «здорово» работает программа. Я начинаю испытывать тихое чувство влюбленности в эту программу.

Но вернемся к ошибкам. Первое – схема при таком построении нуждается в дополнительном проводе, поскольку я соединил все общим проводом (земля). Конечно, можно использовать, если он есть под рукой, провод заземления. А если нет его под рукой?

Попробую обойти эту проблему несколько изменив схему. Не знаю, будет ли это работать, но попробовать стоит. Сущность моей идеи в том, чтобы использовать состояние выводов микросхемы, которые не активны в момент активизации одного из выводов. Если они при этом принимают значение логического нуля, то есть, «сидят» на земле, то это-то я и хочу использовать. Попутно замечу, что сейчас я использую двоичный счетчик. На данном этапе это не имеет решающего значения. Тем более, что пока я размышлял о необходимых изменениях, я подумал, что полезно было бы представить это устройство в другой модификации, используя знакомый мне микроконтроллер PIC16F628A. Но это чуть позже. А сейчас внесем изменения и проверим работу идеи:




Рис.1.48. Проблема лишнего провода

Я не знаю, какая модель двоичного счетчика используется программой, поэтому добавил в схему транзистор. Похоже, что схема будет работать. Но проверим это еще раз, используя микросхему К561ИЕ8 (4017):




Рис.1.49. Проверка простого кабельного тестера в Multisim

Схема нарисована для одной пары, но пока это, действительно, похоже на правильную работу. Загорается только цепочка светодиодов, принадлежащая одному проводу кабеля. Таким образом, разместив в одну коробку, которую можно назвать Master, источник питания (батарейку на 9 В), тактовый генератор, счетчик, светодиоды с соответствующими диодами и резисторами, а в другую коробку только светодиоды, диоды и резисторы (в данном случае D2, D4, D6, D8, R2 и R4) мы получим то, что хотели. Я думаю что такое решение, даже с применением тактового генератора на микросхеме таймера 555, или отечественного его аналога КР1006ВИ1, получится самым дешевым. Но не самым «изящным». Что я имею ввиду? Возможность применения контроллера, например, PIC16F628 (думаю и другие могут работать не менее успешно, но я немного знаком с этим, и мне он очень симпатичен).

Трудно ли модифицировать схему для использования микроконтроллера? Если с программой KTechlab, то нет. Посмотрите, как просто программируется контроллер в этой чудесной программе:




Рис.1.50. Программирование контроллера в программе Ktechlab

Необходимый код набирается из готовых блоков, которые звучат достаточно просто: установить вывод1 порта А в высокое состояние, подождать 1 секунду, установить вывод 1 порта А в низкое состояние, установить вывод 2 порта А в высокое состояние, подождать 1 секунду, установить вывод 2 порта А в низкое состояние, и т. д. Собрав так свою программу, ее можно компилировать, получив ассемблерный код и код для загрузки в программатор. Всё. Всё-всё. Вам осталось запрограммировать микросхему и использовать ее. Конечно светодиоды, диоды и резисторы остаются, но сердце устройства – его схема укрыты в одной микросхеме.

Вы можете создать печатную плату (хотя бы на бумаге, с нею легче будет спаять схему), а в программе KiCAD и посмотреть трехмерный вид платы, который будет выглядеть примерно так:




Рис.1.51. 3D вид платы в программе KiCAD

Окрыленный возможностями этих прекрасных программ, я хочу попробовать создать более интересный тестер для проверки кабеля UTP.

Дело в том, что после ухода специалиста мне пришлось саму выяснять, что произошло, и как с этим бороться. Мне очень повезло, что кабель не был перебит, но одна из двух пар кабеля (лучше бы это был кабель с 4 витыми парами) закорочена гвоздем. Вспомнив все, что мне приходилось читать и слышать о кабельных повреждениях, я вначале постарался улучшить состояние короткого замыкания. Для этой цели я подключил к закороченной паре источник напряжения с защитой от короткого замыкания, которая срабатывает через секунду, а затем стал с помощью мультиметра проводить новые измерения поврежденной пары. После того, как сопротивление пробоя уменьшилось до долей ома, измерение сопротивления с одной стороны и с другой стороны закороченной пары дает два значения, которые позволяют рассчитать расстояние до места повреждения. Я ошибся на 4 см, но этого было достаточно, чтобы исправить кабель не слишком испортив недавно отремонтированную квартиру. При этом возникло два момента – что если бы характер повреждения был иной, я имею ввиду обрыв кабеля? И второе – при восстановлении кабеля мне пришлось сделать «скрутки» на кабеле. И хотя Интернет заработал, но оказалось, что скорость его работы чуть выше модемной. Было обрадовавшись, что кабель восстановлен, я был крайне огорчен скоростью работы 30 Кбит/сек. Поскольку я привык доверять специалистам, я стал консультироваться с ними по этому вопросу, стал искать советы «бывалых» в Интернете. В основном советы были ясными – кабель со скрутками можно сразу выбрасывать, скорость упадет слишком сильно, чтобы это считать скоростью.

Вот эта проблема навела меня на мысль – не помогут ли чудесные программы EDA моделировать ситуацию со скрутками витой пары и ответить на вопрос, действительно ли скорость кабеля будет столь плохой.

Итак, в дальнейшем я предполагаю разработать несложный прибор для отыскания места обрыва кабеля (если это получится), и провести ряд экспериментов в программах EDA с целью выяснить, как влияет скрутка проводов на качество работы витой пары. Что-то я засомневался в мнении специалистов. И причина этого проста – с моим скрученным кабелем, потратив еще некоторое время на выявление проблемы, я сейчас имею скорость работы 6 Мбит/сек (vs 30 Кбит/сек)! Но это чуть позже, а сейчас я вернусь к прерванной работе по подготовке материала для будущей книги. К конспектированию (переводу) руководств к программам EDA.







Hosted by uCoz