Применение двухосевых акселерометров в системе защиты жесткого диска

№ 10’2006
PDF версия
Жесткие диски (HDD) становятся все более распространенными устройствами. Сегодня они все чаще находят применение в портативных компьютерах, аудио/видеоплеерах, коммуникаторах и т. д. И поскольку количество подобной аппаратуры, включающей HDD, постоянно растет, необходимость защиты жесткого диска от серьезных толчков, действующих на него при случайном падении устройства, становится все более актуальной. Для того чтобы увеличить возможности «выживания» HDD после таких падений, нужны специальные меры.

Жесткие диски (HDD) становятся все более распространенными устройствами. Сегодня они все чаще находят применение в портативных компьютерах, аудио/видеоплеерах, коммуникаторах и т. д. И поскольку количество подобной аппаратуры, включающей HDD, постоянно растет, необходимость защиты жесткого диска от серьезных толчков, действующих на него при случайном падении устройства, становится все более актуальной. Для того чтобы увеличить возможности «выживания» HDD после таких падений, нужны специальные меры.

Введение

Существует два подхода к решению проблемы повышения устойчивости HDD к ударам — активный и пассивный.

Пассивный подход существует уже много лет; он подразумевает простое окружение HDD материалами, поглощающими удар, — обычно это резина или гели. Гели считаются более перспективными, чем резина, поскольку лучше поглощают удары, а потому получают все большее распространение. Однако гели не способны защитить устройство от повреждений, вызванных падением с высоты более чем 1 метр; это ограничивает применение HDD в портативном оборудовании. Наладонные компьютеры, mp3-плееры, портативные мультимедийные плееры нуждаются в средствах защиты от повреждений при падении с высоты более 1,5 метров (это средняя высота на уровне уха человека).

Среди активных способов защиты HDD существует два варианта. Один из них — увеличение объема кэш-памяти, за счет чего происходит снижение количества операций записи/чтения на диске. Такой подход, кроме того, уменьшает среднее энергопотребление и рассеиваемую мощность. Однако это дорогой способ, и он не спасет, если в момент удара производилась запись или чтение с диска.

Другой вариант — использовать акселерометры, например двухосевой ADXL320 фирмы Analog Devices, способный обнаруживать падение устройства и генерировать сигнал, по которому система будет устанавливать магнитные головки HDD в безопасное положение. Если данный перевод головок произошел до того, как устройство ударилось об пол или другую твердую поверхность, то столкновение магнитных головок с поверхностью диска будет предотвращено. Этот способ впервые был применен в портативных компьютерах (ноутбуках), выпущенных фирмой IBM в октябре 2003 года.

Моделирование свободного падения

Простейшая модель свободного падения предмета проиллюстрирована на рис. 1, где предполагается, что ось Z падающего предмета перпендикулярна поверхности земли.

Рис. 1. Случай свободного падения, когда ускорение происходит только вдоль одной оси

На рис. 1a предполагается, что положение объекта стабильно, так что ускорения по осям X и Y равны нулю, а на третью ось действует ускорение силы тяжести величиной 1g, что соответствует 9,8 м/с2. На рис. 1б предмет свободно падает. Ускорения по осям X и Y попрежнему равны нулю, но теперь и акселерометр, измеряющий ускорение по оси Z, ускоряется точно так же, как и падающий объект, на котором акселерометр установлен. Поэтому показания данного акселерометра также будут нулевыми.

Более общий случай падающего предмета показан на рис. 2. Здесь грани падающего объекта расположены под произвольными углами к осям системы координат.

На рис. 2a показан предмет, произвольно ориентированный относительно осей; его грани расположены под углами ? относительно оси X, ? относительно оси Y и ? относительно оси Z. При нулевом ускорении выходной сигнал каждого датчика будет равен VCC/2. При ускорении 1g выходные сигналы по трем осям будут равны:

Рис. 2. Более общий случай свободного падения, когда ускорение имеется по всем трем осям

Чувствительность — это величина выходного сигнала сенсора при единичном ускорении. Для ADXL320 при 3-вольтовом питании величина чувствительности составит 174 мВ/g. Если ускорение направлено вдоль оси чувствительности, то напряжение сигнала на выходе акселерометра будет повышаться относительно уровня VCC/2, в противном случае — понижаться.

Когда устройство внезапно роняют, детектируемое ускорение по всем трем осям становится нулевым. Независимо от положения устройства в пространстве акселерометры будут показывать нулевое ускорение, если устройство находится в состоянии свободного падения. Для портативного устройства мы должны, правда, учитывать угловое ускорение, которым может обладать падающий предмет, как показано на рис. 3.

Рис. 3. Падающий предмет обладает угловым ускорением

Для того чтобы упростить вычисление углового ускорения, предположим, что вращение происходит в плоскости XY.

Если угловая скорость равна ω и радиус вращения равен R, то угловое ускорение равно:

Тогда компоненты ускорения по осям X и Y равны:

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

Чтобы вычислить время падения, в течение которого предмет находится в свободном падении, воспользуемся уравнением, выведенным из второго закона Ньютона:

где h — высота, а g — ускорение свободного падения, равное 9,8 м/с². Предположим, что падение произошло с высоты 1 м. Тогда время t будет равно 452 мс.

Обычный алгоритм защиты

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

В макет для испытаний можно вмонтировать два акселерометра ADXL320. Оси чувствительности акселерометров направлены вдоль осей X, Y и Z, как показано на рис. 4. Таким образом мы можем измерять ускорение по всем трем осям (ось чувствительности Y1 излишняя, она не используется). Выходные сигналы акселерометров оцифровываются 12-разрядным АЦП микроконвертора ADuC832, который получает данные и обрабатывает их с помощью встроенного процессорного ядра. Затем полученные данные отправляются для анализа на компьютер посредством интерфейса RS-232.

Рис. 4. Макет для тестирования

На рис. 5 представлена последовательность сигналов, полученных с помощью датчиков ускорения. Сигналы X и Y получены с помощью одного акселерометра, сигналы Z и Y1 — с помощью второго. Как видно, график разделен на 4 участка, отмеченных надписями static (неподвижный), rollover (переворот), free-fall drop (свободное падение) и impact (удар). Частота отсчетов составляет 200 Гц по каждой из осей, что соответствует одному отсчету за 5 мс. Вертикальная шкала дана в кодах 12-разрядного АЦП.

Рис. 5. Последовательность сигналов, детектированных акселерометром

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

Традиционный алгоритм защиты HDD основан на получении вышеописанных сигналов. Процессор отслеживает ускорение по всем трем осям. Если корень из суммы квадратов ускорений (см. уравнение 5) становится меньше, чем некое пороговое значение, посылается сигнал на контроллер HDD, который переводит головки HDD в безопасное положение, прежде чем устройство ударится об пол.

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

Новый алгоритм дифференциального ускорения

Сейчас более пристально посмотрим на поведение графиков ускорения на рис. 5. Если мы сможем получить достаточно информации еще во время переворота устройства, у HDD будет больше времени, чтобы перевести головки в нерабочее, безопасное положение. Фактически во время переворота датчики выдают сигналы различного характера, но выходной сигнал не может запустить процесс парковки.

Однако можно определить некоторые функции, соответствующие сумме квадратов производных ускорения по осям X и Y (6).

Полученный результат будет выглядеть подобно показанному на рис. 6. Кривые, изображенные на рис. 6, получены в результате оцифровки сигнала акселерометра с помощью 12-разрядного АЦП микроконвертора ADuC832. Период отсчетов также составляет 5 мс. Кривая черного цвета соответствует сигналу (dX/dt)²+(dY/dt)², зеленым цветом показан сигнал (dZ/dt)²+(dY1/dt)².

Рис. 6. Сигналы сумм квадратов производных ускорения (dX/dt)²+(dY/dt)² и (dZ/dt)²+(dY1/dt

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

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

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

Реализация алгоритма дифференциального ускорения

Главными компонентами системы обнаружения падения является двухосевой акселерометр ADXL320, сдвоенный ОУ AD8542 и микроконвертор ADuC832. Упрощенная схема показана на рис. 7.

Сигналы акселерометра поступают на ОУ AD8532, который играет роль буфера на входах ADC0 и ADC1. Мультиплексор переключает входы и обеспечивает частоту отсчетов 200 Гц на каждом канале, и контроллер постоянно отслеживает сигнал. Микроконвертор исполняет код, схема алгоритма которого показана на рис. 8.

Рис. 8. Схема алгоритма защиты HDD

Таким образом система обнаруживает состояние падения, процессор подает сигнал на контроллер HDD, и контроллер HDD паркует головки диска, прежде чем произойдет удар.

Заключение

Возникает вопрос: обязательно ли применять трехосевой датчик для такой системы? Ответ: нет. При использовании двухосевого акселерометра, например ADXL320, и при реализации алгоритма дифференциального ускорения, описанного выше, задача обнаружения падения будет успешно выполняться. Схема на двухосевом акселерометре, помимо более низкой цены, будет проще и экономичнее.

При работе с вышеописанной системой защиты обнаружилось, что время отклика между началом свободного падения и появлением сигнала парковки составляет около 40 мс, при частоте отсчетов 200 Гц на канал и полосой частот датчика 100 Гц. Время, необходимое для парковки головок HDD, не должно превышать 150 мс. Тогда время от обнаружения падения до момента, когда должна быть завершена парковка, не превышает 190 мс. Это значительно меньше, чем 452 мс, за которые предмет падает с высоты 1 метр.

Алгоритм, описанный выше, применим в большинстве случаев. Единственный случай, когда он может не сработать, — если значения производных от ускорения по осям X и Y не превысят порога срабатывания. Но такое крайне маловероятно и в наших практических экспериментах с макетом никогда не случалось.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *