Здравствуйте все. Наверно многие из нас видели в интернете видео с музыкальными флоппи дисководами. Если нет, обязательно посмотрите. Вот некоторые из них:


Итак, вы посмотрели и до сих пор не ушли с этой страницы? Тогда устройтесь поудобнее, ибо дальше вы узнаете, как повторить эту «магию».

Начнем с того, что музыку в вашем флоппи играет не маленький гномик с виолончелью. Высота звука изменяется с изменением скорости вращения нашего дисковода. Думаю, все понимают, что не вокруг своей оси.

Но одно дело, когда у нас есть постоянное количество оборотов. Тогда мы имеем всего лишь монотонное гудение, одна нота. Другое дело, когда мы хотим получить «имперский марш» или мурку. Для этого нам нужно будет менять обороты, и учитывать время длительности каждой ноты.

Мы с вами умнее и поэтому мы заставим компьютер сыграть за нас эту мелодию. А для этого нам понадобится контроллер. Например, ардуино. С его помощью мы и заставим сегодня «петь» наши флоппи дисководы.


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

Нашли? Теперь переходим к подключению:
1) Соединяем черный и зеленый контакты, в нашем блоке питания. Это требуется, чтобы его включить.


2) 11 и 12 контакты дисковода замыкаем между собой с помощью прыгуна (jumper). Да, я знаю, что не стоит переводить такие названия.
3) 17 и 19 подключаем к земле ардуино (GND).
4) 18 к 3 диджитал пину ардуино.
5) 20 тоже флоппи, к 2 д.п.
6) Запитываем.

Теперь софт:
1) Скачиваем IDE, ставим драйвера.
2) Качаем библиотеку TimerOne в папку к ардуино.
3) Заливаем скетч.
4) Все подключено, все залито? Устанавливаем Java JDK среду NetBeans.
5) Качаем MoppyDesk и драйвера к ней. Это программа, которая через микроконтроллер заставляет дисковод «петь»
Запускаем MoppyDesk через NotBeans. Смотрим, куда установлен ардуино, выбираем этот ком порт. Дальше, нажимаем Connect и выбираем миди файл, Start.

Однажды, разбирая коробку с компьютерным хламом, я обнаружил у себя несколько дисководов от от старых 3-х дюймовых гибгих дисков. В свое время я извлек из них шаговые двигатели, а выбросить оставшиеся внутренности не поднялась рука. Сейчас мое внимание привлек двигатель для вращения дисков. Он выполнен самостоятельным блоком на отдельной печатной плате вместе с контроллером привода.
Задача состояла в том, как его запустить. Поиск решения в сети Internet по запуску такого двигателя не дал какого-либо положительного результата. Было множество статей по использованию шаговых двигателей позиционирующих магнитную головку и практически ничего по запуску "блина" - двигателя вращения диска. Единственная обнаруженная статья была на английском языке, но там описывался очень древний и конкретный дисковод... В общем пришлось искать способ запуска самостоятельно.

С чего я начал. К плате управления подходит шлейф из 4-5 цветных проводов в зависимости от типа дисковода. Два из них подают питание 12V (это было не трудно проследить), и как правило имеют цвета черный(общий) и красный(+). Оставшиеся провода, как я предположил, должны управлять пуском двигателя и скорее всего имеют ТТЛ уровни.

На плате я также обнаружил два фотоэлемента: один на краю платы - он определяет, что диск вставлен в приемник; второй фотоэлемент стоит ближе к центру двигателя - он позиционирует начальное положение диска в котором имеется соответсвующее отверстие. Нас интересует первый (удаленный) фотоэлемент, так как при вставленном диске мотор уже начинает вращаться (в подключенном к компьютеру дисководу).
Фотография контроллера с мотором от дисковода фирмы TEAC приведена на рисунке 1.

Далее, проследив на плате цепь от фотоэлемента, я установил, что она через транзистор поступает на вход управления микросхемы H13431 - контроллер двигателя (описание этой микросхемы нашел только на японском языке). На тот же транзистор подключен через диод один из проводов входного шлейфа.
Далее - дело техники. Подал на плату питание 12 вольт. Через резистор номиналом 3,3 ком вычисленный контак соединил с плюсом питания. ВСЕ!!! Двигатель начал вращаться!
Фрагмент платы с установленныи резистором показан на рисунке 2. Крайний левый контакт не задействован (видимо какой-то выходной сигнал). Следы пайки на плате - моя оплошность: подал на входной контакт непосредственно напряжение питания 12В и сжег транзистор, далее действовал осторожнее - через резистор номиналом 3,3 ком.

На другом дисководе (рис.3) с названием Sankyo и микросхемой контроллера M51784 пошел таким же путем (описание этой микросхемы есть на сайте www.datasheetcatalog.com). Нашел входной контакт на плате который выходит через резистор на управляющий транзистор и фотоэлемент. Также через резистор подал на него положительный потенциал. И... тишина. Попробовал поочередно позамыкать на "землю" оставшиеся два входных контакта... Заработало!!! Что это за контакт я не стал выяснять.

Увеличенный фрагмент второй доработанной платы приведен на рисунке 4. "Земляной" контакт и контакт от него слева запаяны вместе. Крайний левый контакт остался свободным.

Таким образом порядок подключения неизвестного дисковода достаточно прост:

1. Находим провода питания (обычно красный+ и черный-).

2. Пытаемся найти цепь управляющего транзистора и фотоэлемента (примерная схема на рис.5).

3. Если двигатель не вращается оставшиееся контакты замыкаем на "землю" (или подаем на них положительный потенциал через ограничительный резистор в несколько ком).

Дальнейшие эксперимены с двигателем показали, что он работоспособен в диапазоне питающих напряжений от 7 до 12 вольт. При этом скорость вращения его очень стабильна, так как задается кварцевым или пъезокерамическим резонатором. Кстати можно попытаться поставить резонатор на другую частоту тем самым изменив скорость вращения. На моих платах резонатор выполнен в виде пластмассового прямоугольника синего цвета - его легко найти.

Применение данного двигателя оставляю на вашу фантазию. Желаю удачи!

Однажды, исследуя просторы интернета наткнулся я на интересную плату с микроконтроллером. Называется эта удивительная вещица Arduino. Меня очень заинтересовала эта схемка. С ее помощью можно сделать самому робота, метеостанцию, сигнализацию и даже что-то посерьезней, например - «Умный Дом».

Прикупив сей девайс, начал изучать. Наигравшись со светодиодами, датчиком температуры и LCD дисплеем, решил сделать что-то такое эдакое. Увидел на YouTube ролик про музыкальный дисковод, заинтересовался. Благо у меня этого добра (Floppy Drive`ов) полно на работе. Полазив по рунету и не обнаружив подробных мануалов как это можно реализовать, полез на буржуйские сайты и к своему счастью там и нашел подробное описание. И так начнем.

Необходимые ингредиенты:

Дисковод 3,5"" гибких дисков, у меня их 6 штук

Arduino Uno

BreadBoard, можно и без него, но с ним все же удобней

Блок питания от компьютера, подойдет любой

Мы сразу замыкаем 2 контакта зеленый и черный чтобы включить блок питания

Подключение флоппи к Arduino:

Полную распиновку флоппика давать не буду, ибо все есть в инете. Нам необходимы следующие пины:
11 и 12 контакты дисковода замыкаем между собой с помощью джампера (Jumper).
17 и 19 контакты дисковода подводим к земле Arduino (GND).
18 контакт флоппа соединяем с 3 digital pin Arduino.
20 контакт флоппа соединяем со 2 digital pin Arduino.
Это что касается одного флоппика, с другими остальными 5-ю, как в моем случае, то повторяем процедуру так же. Единственное отличие, то что на 2 дисководе 18 контакт соединяем с 5 цифровым контактом Ардуины, а 20 с 4-м и так далее.
Ну и соответственно питаем 5В и GND сами дисководы.

Установка софта:

Качаем IDE для Ардуины, подключаем к компу, ставим драйвера.
На данном этапе, перед заливкой скетча в Ардуину, необходимо скачать к себе библиотеку
TimerOne в то место где находится папка с ардуино, например: %arduino%\libraries\
Далее нам необходимо залить скетч в Arduino.
Далее после заливки кода в микроконтроллер и после того как все железо подключено, необходимо установить Java JDK и интегрированную среду разработки NetBeans .

После качаем java проект MoppyDesk - по сути эта прога и есть тот самый мозг, который заставляет через микроконтроллер производить звуки на флоппи дисководах.
Затем скачиваем драйвера для программы MoppyDesk. Так как у меня Windows 7, то я копировал файлы:
RXTXcomm.jar в \jre\lib\ext
rxtxSerial.dll в \jre\bin
rxtxParallel.dll в \jre\bin

Открываем проект MoppyDesk в NetBeans и запускаем его, выбираем наш com порт (в диспетчере устройств можно посмотреть на какой порт установился Arduino), нажимаем кнопку Connect, далее необходимо выбрать midi файл, нажимаем Start и начинается дискотека. Так как у меня в серверной очень шумно, и дисководов почти не слышно, то я использовал микрофон, дабы усилить эффект.

Когда-то давным-давно сделал из старого «винчестера» станочек для правки и заточки мелких свёрл, но у него слишком велика минимальная скорость вращения и обычно когда торопишься, то свёрла перегреваются. Пытался как-то уменьшать обороты, ничего хорошего не получилось и поэтому оставил всё как есть, просто заставив себя не торопиться. А тут недавно пришли знакомые компьютерщики и с вопросом «посмотри, из этого можно что-нибудь полезного сделать?» начали вываливать на стол множество дисководов на три с половиной дюйма (рис.1 ). И почему-то первой же мыслью было – а не попробовать ли собрать новую низкоскоростную «правку»…

Не откладывая это дело в долгий ящик, тут же снимаем крышки с нескольких дисководов разных марок и смотрим, что там внутри.

А внутри всё по-разному и у разных моделей одной марки управление двигателями может быть собрано и на одной и на двух микросхемах (рис.2 ).

Рассматриваем детали на платах поподробнее и отдаём предпочтение варианту с двумя микросхемами (рис.3 ) – по дорожкам и подходящим проводам видно, что правая микросхема ALPS-R SD705A (кроме всего прочего) отвечает за работу шагового двигателя перемещения считывающей головки, а левая LB11813 – только за работу двигателя вращения диска.

Также видно, что обе микросхемы соединяются всего двумя сигнальными дорожками – 33 и 34 выводы большой микросхемы идут к соединённым вместе 10-му и 11-тому выводам и к 12 выводу LB11813 соответственно.

Честно говоря, ранее уже приходилось сталкиваться с дисководами и уже есть некоторое представление о принципе их работы, поэтому, сказав для пущей важности «сейчас мы здесь что-нибудь отрежем…», аккуратно перерезал обе эти дорожки (рис.4 ).

Вывод 12 микросхемы LB11813 оставляем в покое, а на 10-й и 11-й нужно подать тактовый сигнал CLK. Так как частота его следования должна быть около 1 МГц, а амплитуда стандартная для микросхем пятивольтовой серии, то собираем на подвернувшемся под руку кусочке текстолита генератор прямоугольных импульсов на микросхеме К555ЛН1. Ставим переменный резистор для регулирования частоты и при среднем его положении подбором ёмкости конденсатора подгоняем выходную частоту к 1 МГц. Затем соединяем выход генератора с выводами LB11813 (рис.5 ), подпаиваем шины питания дисковода и генератора и включаем БП. Слышим, что двигатель начал вращаться. Это хорошо… Покрутив ручку переменного резистора, слышим как меняется частота вращения двигателя. И это хорошо…

Гости, радостные и окрылённые открывшимися перспективами, помчались домой, на ходу обдумывая, как можно использовать это «чудо техники», а я вернулся к схеме, чтобы посмотреть, что нужно оставить, а что убрать, и как это всё это облагородить в корпусе…

Сначала, вооружившись тестером, карандашом и листком бумаги, срисовал с платы схему (рис. 6 ). Здесь нумерация элементной обвязки, относящейся к микросхеме LB11813, оставлена старой, т.е. той, что была на плате.

Затем посмотрел некоторые технические характеристики. Потребляемый от пятивольтового блока питания ток на холостом ходу равен 0,22 А, при средней «нагрузке» на валу двигателя – меняется от 0,5 А до 0,7 А. Перед самой остановкой вращения ток достигает значения 0,85 А. Температура нагрева корпуса микросхемы LB11813 зависит от нагрузки, но в любом случае не превышает 50-70 градусов.

Минимальная частота генератора, при которой ещё вращается двигатель – около 0,45 МГц, максимальная – около 4,6 МГц.

Теперь дисковод полностью разбираю, оставив только две платы, соединённые 4-мя цветными проводами – по ним микросхема LB11813 управляет двигателем (рис.7 ). Белый восьмипроводный шлейф тоже не нужен – на плате с двигателем что было интересного, так это не то дроссель, не то какой другой элемент, но очень похожий на дроссель и отвечающий, скорее всего, за контроль частоты вращения двигателя (т.е. выполняющий функции датчика Холла) – так вот его можно выпаять, всё работает и без него. Остальные проводники шлейфа – это общий провод, напряжение питания, а также передача сигналов от концевых выключателей с платы двигателя (выпаиваем и их тоже).

«Сдуваю» термофеном все ненужные элементы с большой платы и обрезаю её так, чтобы остались крепёжные отверстия (рис.8 ).

Готового подходящего по размерам не нашёл, взял кусок 16-миллиметровой ДСП, тонкий пластмассовый лист и кусок стеклотекстолита от старой печатной платы. Немного попилил, посверлил и закрепил всё так, чтобы не очень «выпирало» и не занимало много места на столе (рис.9, рис.10, рис.11, рис.12 ).

Печатную плату для импульсного генератора развёл, но пока не вытравил – неохота разводить «бодягу» ради одной-двух маленьких плат. А пока установил в корпус макетный вариант и приклеил термоклеем его и плату с микросхемой-приводом двигателя. Файл печатной платы в формате программе находится в приложении к статье (вид сделан со стороны установки деталей - рисунок при надо «зеркалить»).

Никакой накладной декоративной панелью корпус сверху накрывать не стал – головки винтов так и оставил на виду. Пластмасса, из которой сделана верхняя крышка, попалась очень удачная – к ней не прилипают намертво никакие клеи из серий «Момент» или БФ и она практически не царапается и не мажется. Из той части, что осталась при выпиливания отверстия под вращающуюся поверхность двигателя, вырезал кольцо, которое приклеил сверху к этой вращающейся поверхности. На это кольцо можно наклеивать кольца из наждачной бумаги (рис.13 ), которые при желании достаточно легко содрать и на пластмассовой поверхности кольца почти не остаётся остатков клея. А что остаётся – сцарапывается ногтём.

В качестве блока питания применил импульсный преобразователь, выдающий 5В/1А от какой-то старой оргтехники. Провод питания впаян в схему напрямую – может быть это и не очень правильно, но зато блок питания никогда не теряется и потом, при его замене на новый, не приходится разбираться, где в разъёме «плюс, а где «минус»».

Никаких выключателей на корпусе нет, индикации подачи напряжения тоже. Движок резистора регулировки оборотов выведен сбоку. Учитывая, что за прошедший месяц пришлось два раза править свёрла и один раз затачивать несколько сломанных разного диаметра и за это время ни разу не появилось надобности уменьшить обороты, то получается, что можно было и не делать плавную регулировку. Настроить генератор на 4 МГц – и всё.

Конечно же, проверил работу схемы с двигателем от «винчестера» - всё работает так же, но с заметно меньшей мощностью в сравнении с управлением от «родного» контроллера. Это понятно - двигателю от HDD требуется более высокое напряжение питания.

Из академического интереса посмотрел форму сигналов в цепях питания двигателем. На рисунках ниже показаны состояния на «фазах» U и V относительно общего провода при тактовой частоте 4,6 МГц (рис.14 ), при 1 МГц (рис.15 ) и на одной из «фаз» и вывода, обозначенного на платах как N («нейтраль», надо полагать) (рис.16 ):

Сигналы «снимались» через резисторные делители, поэтому уровни не соответствуют показаниям шкалы напряжений, но так коэффициенты деления были одинаковы и не менялись, то отношения уровней относительно друг друга верны. Временные интервалы соответствуют действительности.

Андрей Гольцов, г. Искитим

Список радиоэлементов

Обозначение Тип Номинал Количество Примечание Магазин Мой блокнот
Перечень дополнительных элементов
DD2 Микросхема цифровая К555ЛН1 1 В блокнот
R1, R2 Резистор

470 Ом

2