View Sidebar
Яндекс.Метрика
 
Флопотрон. Дисководы гибких дисков на 3,5 дюйма

Флопотрон. Дисководы гибких дисков на 3,5 дюйма

19.01.2019 14:230 comments

Появилось желание собрать собственный Флопотрон – оркестр из старых флоппи дисководов. Энтузиастами ведется проект Moppy, в рамках которого создана программа и инструкция по дирижированию дисководами посредством Arduino и ПК. Но хочется не просто воспользоваться готовым рецептом, а детально разобраться что и как работает.

Флопотрон. Дисководы гибких дисков на 3,5 дюйма

Это первая часть цикла про Флопотрон, тут расскажу, как подключить и заставить работать флоппи-дисковод, какие сигналы нужны для управления им. Контроллер Arduino можно на время отложить в сторону, сегодня он не понадобится.

ДЛЯ ПРОДОЛЖЕНИЯ ПРОЕКТА ФЛОПОТРОН НУЖНЫ:
Дисководов 5,25 дюйма + пара дискет
Дисковод 3,5 дюйма марки CHINON FB-354
Немножко дискет 3,5

ПРИМУ В ДАР ИЛИ КУПЛЮ НЕДОРОГО ИЛИ ОПЛАЧУ ПЕРЕСЫЛКУ
ПИШИТЕ НА ПОЧТУ KOBEJIKOV(a)RAMBLER

 

Что жужжит и крутится?

В дисководе есть мотор, который вращает дискету, и шаговый двигатель, который перемещает считывающую головку. На дискете 80 дорожек, соответственно головка способна сделать 80 шагов.

Схематическое устройство дисковода

Нулевая дорожка ближе к краю магнитного диска, восьмидесятая – ближе к его центру.

Двигатели дисковода

В музыкальных целях используется перемещение головки, но при желании двигателем тоже можно покрутить.

Питание дисковода FDD

Дисковод требует напряжения в 5 В. Запитать флоппик можно от компьютерного блока питания. Чтобы запустить блок питания, нужно на самом длинном разъеме перемкнуть контакт зеленого и любого из черных проводов.

Запуск блока питания компьютера

Если вы впервые так «заводите» блок питания, то настоятельно рекомендую прочитать в интернете инструкцию на эту тему.

Ни в коем случае, не включайте блок питания компьютера без нагрузки!

Питание дисковода от источника питания компьютера

Питание к дисководу подводится через четырехконтактный разъём (Mate-N-Lock). Чёрные провода – это минус, красный – +5 В, жёлтый – +12В. Напряжение в двенадцать вольт в дисководе не используется, поэтому соответствующий контакт впаян в плату, но ни к чему не подключён.

Внешний источник питания

Для проведения экспериментов, мне оказалось комфортнее запитать дисковод от внешнего блока питания для жёсткого диска. Воспользовался переходником с Molex на Floppy. Такие переходники еще потребуются, поэтому рекомендую их подкупить заблаговременно.

Питание дисковода от внешнего источника

На фотографии видно, что для питания действительно достаточно только двух проводов: +5 В (красный) и минус (чёрный).

Распиновка интерфейса IDE FDD

Разъём интерфейса 34-пиновый, но на практике не все контакты нижнего ряда могут быть установлены.

Контакты дисководов

Нижний ряд может быть и почти совсем «беззубым» (зависит от конкретной модели), нам не принципиально.

Контакты питания и нумерация контактов IDE FDD

В общем случае, нижний ряд (нечетные контакты) – это минус (Ground), верхний ряд (чётные контакты) – сигнальные линии.

В разных документах описывается как минимум два варианта распайки разъема IDE FDD.

Вариант первый

Контакт Сигнал Контакт Сигнал
2 М/С 20 Step Pulse
4 N/C 22 Write Data
6 N/C 24 Write Enable
8 Index 26 Track 0
10 Motor Enable А 28 Write Protect
12 Drive Select В 30 Read Data
14 Drive Select A 32 Select Head 1
16 Motor Enable В 34 (Spare)
18 Stepper Direction

 

Вариант второй

Контакт Сигнал Контакт Сигнал
2 Reduced Write 20 Step
4 Reserved 22 Write Data
6 Drive Select 3 24 Write Gate
8 Index 26 Track 0
10 Drive Select 0 28 Write Protect
12 Drive Select 1 30 Read Data
14 Drive Select 2 32 Side 1 Select
16 Motor On 33 Diskette Change
18 Direction Select

Не указанные в таблицах контакты – это минус (Ground)
или же контакт отсутствует или не подключён.

Контакты нижнего ряда замкнуты на минус (общий провод). Исключения могут составить не подключённый 1 и сигнальный 33 контакты. 34 контакт верхнего ряда также может быть минусовым. Корпус дисковода также, как правило, замкнут на минус. Всё это зависит от конкретной модели флоппика. Всегда можно воспользоваться тестером и определить минусовые контакты конкретного экземпляра.

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

Нам интересны только несколько контактов:

Контакт Сигнал Значение
12
(6, 10, 14)
Drive Select Активизация привода
18 Direction Select Смена направления движения головки
20 Step Импульсы смещения головки
16
(10)
Motor Enable Включение двигателя вращения диска *

* Двигатель вращения диска громких звуков не производит,
поэтому в флопотроне он задействован не будет.

Нужные нам контакты дисковода

Нумерация дисководов

На один кабель в компьютере можно было повесить два или даже четыре дисковода. Дисководы принято обозначать буквами A, B или как Drive 0, Drive 1, Drive 2, Drive 3.

Дисковод реагирует на команды перемещения головки только тогда, когда он выбран активным. Активность указывается подачей логической единицы на соответствующий пин:

  • 6 – для Drive 3
  • 10 – для Drive 0
  • 12 – для Drive 1 или B
  • 14 – для Drive 2 или A

Специальной перемычкой (при наличии) на дисководе можно задать номер контакта (6, 10, 12 или 14), который будет отвечает за активизацию дисковода, т.е., по сути, присвоить номер (тип) устройству (Drive 0, Drive 1 - B, Drive 2 - A, Drive 3).

Перемычки установки типа дисковода

Со временем для подключения дисководов придумали кабель с перекрученными у одного из разъёмов проводами (Floppy Disk Drive Cable Twist), а дисководы с перемычками перестали производить.

Перекрученный кабель для FDD

Все дисководы стали выпускаться с предустановленным производителем типом. Самый распространённый – это Drive 1, он же B.

Один из двух подключенных к Twist-кабелю дисководов сохранял свой тип Drive 1 (B), а второй, за счет перекрутки, воспринимался компьютером как Drive 2 (A).

Дисковод Sony MPF520

Мне с трудом удалось отыскать хоть какой-то дисковод с перемычкой. На Sony MPF520 перемычка позволяет назначить дисковод как Drive 1 (B) или Drive 0.

Перемычка на дисководе Sony MPF520

Скорее всего, все найденные вами дисководы будут дисководами типа B (Drive 1), поэтому в дальнейшем повествовании опираться буду только на них.

Особенность интерфейса IDE FDD

Сигнальные входы подтянуты к питанию. Напряжение высокого уровня на них означает логический ноль, а низкого – логическую единицу.

Таким образом, чтобы подать логическую единицу на какой-либо контакт, достаточно соединить его с минусом.

Напомню, что нижний ряд контактов и корпус – это минус.

Выбор активного дисковода и свечение светодиода

Активизация дисковода производится соединением 12 контакта на минус (подача логической единицы). У активного дисковода сразу начинает светиться зелёный светодиод.

Перемещение считывающей головки возможно только если дисковод активизирован.

Проще всего активизировать дисковод с помощью жесткой перемычки между 11 (минус) и 12 (активизация) контактом.

Перемычка между 11 и 12 контактом

Если 11 контакта (минуса) нет, то 12 контакт придется соединить с любым другим минусовым контактом нижнего ряда гибким проводом.

Перемычка между минусом и 12 контактом

Ещё один вариант, это разобрать дисковод и сделать перемычку на минус прямо на плате.

Если все флоппики активизировать перемычками на минус заранее, то при построении флопотрона не потребуется к каждому дисководу подводить провод к 12 контакту.

Отрицательная сторона такого решения – светодиоды всех дисководов будут светиться всё время, даже когда они «не играют».

Включение двигателя

Чтобы запустить двигатель вращающий диск, надо соединить 16 контакт с минусом.

Мотор дисковода

Однако, двигатель работает только тогда, когда в дисковод вставлена дискета.

Запуск мотора дисковода

Можно дискету не вставлять, а зажать отверткой кнопку-датчик.

Кнопка-датчик вставленной дискеты

Как вариант, установить на плату дисковода перемычку, шунтирующую кнопку.

Шунтирование кнопки-датчика вставленной дискеты

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

Перемещение считывающей головки

Чтобы сместить головку на один шаг, необходимо подать одиночный импульс на контакт 20. Перемещение производится не по фронту, а по спаду импульса. Дисковод должен быть активизирован (минус на 12 контакт).

Направлением перемещения управляет 18 контакт. Когда он замкнут на минус, то головка перемещается по направлению к центру, в противном случае (по умолчанию), к краю диска.

Эксперимент по перемещению магнитной головки дисковода

Поперемещать считывающую головку дисковода просто. Достаточно «пощелкать» минусом по 12 контакту.

Головка способна переместиться на 80 шагов.

Некоторые соображения

Как я уже говорил, можно сделать перемычку на плате дисковода между минусом и 12 контактом. В этом случае свечение светодиода будет постоянным.

Можно подвести к 12 контакту отдельный провод и активизировать дисковод только когда надо «пошуметь» головкой.

Шунтирование 12 и 20 контактов

Еще один способ, это сделать перемычку на плате между 12 и 20 контактами. Тогда при подаче импульса на смещение головки на 20 контакт, автоматически будет происходить активизация дисковода и светодиод будет подмигивать на каждом шаге перемещения.

Продолжение следует…

Добавить комментарий


css.php