Я физик, и несколько недель назад у меня было откровение о том, как я могу использовать свой персональный компьютер, чтобы получить более тонкий контроль над лабораторными экспериментами, чем это обычно бывает. Прежде чем я убежал, чтобы попробовать это, я хотел бы проверить возможность с людьми, которые имеют больше опыта, чем я в таких вопросах.Хранение компьютерного оборудования для управления экспериментами
Идея состоит в том, чтобы использовать порты ввода-вывода --- VGA, ethernet, разъемы динамиков и т. Д. - на компьютере, чтобы напрямую разговаривать с датчиками и исполнительными механизмами в экспериментальной установке. Например. разрежьте одну сторону сетевого кабеля (с другим концом, подключенным к компьютеру) и отправьте каждую линию на другое устройство. Я знал постдока, который сделал что-то очень похожее с помощью BeagleBone. Он написал код сборки, который позволяет ему синхронизировать все с внутренними часами и использовать контакты GPIO, чтобы эффективно дать ему гибридный генератор сигналов/область, которая была полностью программируемой. Кажется, что то же самое должно быть возможно с ноутбуком, и это будет иметь дополнительное преимущество, которое вы можете выполнить с помощью анализа данных с того же устройства.
Основная потенциальная трудность, которую я предвижу, заключается в том, что аппаратное обеспечение на BeagleBone спроектировано с учетом такого типа ввода/вывода, в то время как я ожидаю, что аппаратное обеспечение на ноутбуке, вероятно, будет труднее контролировать напрямую. Я знаю, например, (с некоторого предварительного расследования, http://ask.metafilter.com/125812/Simple-USB-control-how-to-blink-an-LED-via-code), что USB-порты будут труднодоступны таким образом, а VGA (согласно VGA 15 pin port data read and write using Matlab) невозможно. Тем не менее, я ничего не нашел об использовании других портов, таких как Ethernet или громкоговорители.
Итак, главный вопрос: будет ли эта идея осуществимой (не вложив много месяцев для каждой новой модификации аппаратного обеспечения), и если да, то какой тип ввода/вывода (ethernet, разъемы динамиков и т. Д.), Скорее всего, быть лучшим выбором?
Вспомогательные вопросы:
Где я могу найти материал, чтобы узнать, как я мог бы идти о выполнении этого плана? Я даже не уверен, какие ключевые слова подключаются к Google.
Будет ли легкость, с которой я могу это сделать, сильно зависит от операционной системы или аппаратного бренда?
Низкие параллельные порты содержат по меньшей мере 8 быстрых (> 64 кГц) переключателей для вывода и 8 быстрых «кнопок» (короткие датчики) для ввода и реализуются путем записи/записи записи одного адреса памяти с 8-битным значением, aka один байт. для ввода вы можете взломать дешевый USB-геймпад и припой на контакты мембранной кнопки, что даст вам быстрый 10-канальный дискретный контроллер ввода для менее чем 20 долларов. – dandavis
выходы с ПК сложнее, но дешевые варианты включают подсветку numlock, динамики, геймпады с вибрацией/обратной связью, светодиодные диски USB-накопителя (для активации пинг-диска), выталкивание лотка для дисков rom, фотодатчики и мигание прямоугольников на мониторе, и, конечно, : много вещей, которые вы покупаете для задания (boo). – dandavis
Большинство современных ПК очень бедны в подразделении простого ввода-вывода, и какие интерфейсы у них есть (например, USB), как правило, имеют удивительно высокую задержку. Если вам нужна тесная связь с реальным миром, вам понадобится встроенный процессор с прямым GPIO, такой как ARM SOC на beaglebone вашего друга, а не потребительский ноутбук. –