Взлом компьютерного оборудования для проведения эксперимента

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

Идея состоит в том, чтобы использовать порты ввода-вывода ---VGA, Ethernet, гнезда динамиков и т. Д.- на компьютере, чтобы напрямую общаться с датчиками и исполнительными механизмами в экспериментальной установке. Например, отрежьте одну сторону кабеля Ethernet (другой конец подключен к компьютеру) и отправьте каждую линию на другое устройство. Я знал постдока, который делал нечто очень похожее, используя BeagleBone. Он написал некоторый ассемблерный код, который позволял ему синхронизировать все с внутренними часами, и использовал выводы GPIO, чтобы эффективно дать ему гибридный генератор сигналов / область видимости, который был полностью программируемым. Кажется, что то же самое должно быть возможно с ноутбуком, и это будет иметь дополнительное преимущество, что вы можете выполнять анализ данных с того же устройства.

Основная потенциальная трудность, которую я предвижу, заключается в том, что аппаратное обеспечение на BeagleBone разработано с учетом такого рода операций ввода-вывода, в то время как я ожидаю, что аппаратное обеспечение на ноутбуке, вероятно, будет сложнее контролировать напрямую. Я знаю, например (из какого-то предварительного расследования, http://ask.metafilter.com/125812/Simple-USB-control-how-to-blink-an-LED-via-code), что порты USB будут труднодоступными таким образом, и VGA (в соответствии с 15-контактным VGA-портом считывания и записи данных с использованием Matlab) невозможен. Я не нашел ничего об использовании других портов, таких как Ethernet или разъемы для динамиков.

Таким образом, главный вопрос: будет ли эта идея осуществимой (не вкладывая много месяцев в каждую новую версию аппаратного обеспечения), и если да, то какой тип ввода / вывода (Ethernet, разъемы для динамиков и т. Д.), Вероятно, будет лучшим выбором??

Вспомогательные вопросы:

  1. Где я могу найти материал, чтобы узнать, как я могу выполнить этот план? Я даже не уверен, какие ключевые слова включить в Google.

  2. Будет ли легкость, с которой я могу это сделать, сильно зависеть от операционной системы или марки оборудования?

2 ответа

Единственный кабель, который я могу придумать для ПК, который может подобраться к нему, - это параллельный кабель для принтера, который практически не используется. Это 25-проводной кабель, по которому распространяются данные, что позволяет одновременно передавать больше данных. Я просто не уверен, можете ли вы указать целевую строку или заполнить ее слева направо по мере отправки данных.

Использовать его на ноутбуке сегодня было бы очень сложно. Вы не найдете ноутбуков с параллельными портами. Существуют кабели usb-параллельный и кабели последовательный-параллельный, но я думаю, что единственное управление - это USB-интерфейс или последовательный интерфейс, а не параллельный.

Что касается Ethernet, у вас есть 4 витые пары с использованием только 2 пар и 2 пары, которые являются дополнительными.

Есть какое-то аппаратное обеспечение, которое называется Zwave, и вы можете посмотреть его. Zwave позволит вам построить сеть устройств, которые взаимодействуют в виде сетки. Я не уверен, какое время ответа вам нужно.

Я просто подумал о том, что может быть хорошим решением. Проверьте оборудование безопасности. Существует много оборудования для компьютеров, которые контролируют двери, окна, датчики и т. Д. Эта отрасль может удовлетворить ваши потребности.

Я думаю, что самым простым способом было бы использовать порт USB в качестве устройства интерфейса пользователя (HID) и использовать специально созданную программу PIC и PIC, которая включает в себя функцию USB для кодирования данных, которые должны быть отправлены на компьютер и таким образом возможность программировать его независимо от ОС благодаря тому, что все ОС мэра имеют функцию HID USB.

В любом случае, если вы использовали свой MIC/VGA/HDMI для любого другого порта, вам все еще нужно устройство для кодирования или передачи данных и другая программа внутри компьютера для декодирования отправляемых данных.

И помните, что разное оборудование имеет разное программное обеспечение (драйверы), которое может декодировать необработанные данные другими странными способами, делая вашу аппаратную зависимость IO зависимой.

Надеюсь, это поможет, но именно поэтому USB был изобретен в первую очередь, чтобы сделать его аппаратным и независимым от операционной системы.

Другие вопросы по тегам