Телескопы покупают здесь


A A A A Автор Тема: Опять микроконтроллерная система управления.  (Прочитано 6992 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн krusshАвтор темы

  • *****
  • Сообщений: 2 460
  • Благодарностей: 112
  • http://www.soulfulbits.com/
    • Сообщения от krussh
Вот выдержки из курсовой моего студента-друга-коллеги А. Попова (x-man)
Сейчас телескоп может управляться от ручного пульта и персоналки (по USB). Вывод текущих координат (RA-DEC or TimeAngle-Dec) и звездного времени на ЖК и на монитор. Кричит дурным голосом при опускании трубы ниже 10 град над горизонтом.
Точность позиционирования - 30 угл.сек.
Картинки и прошивки контроллеров в приложениях.

3 Структура системы управления телескопом, инструмен-тальная система координат, потоки данных
3.1 Структура системы управления, алгоритмы, связь с персональ-ным компьютером
Вся система управления телескопом реализована на микроконтролле-рах (см. рис. 5). Все основные вычисления разделены между двумя контрол-лерами Atmega162. Это сделано для увеличения быстродействия всей систе-мы в целом и страхует ее от пропускания сигналов с датчиков состояния. Между собой основные контроллеры обмениваются информацией по шине SPI. Связь с персональным компьютером осуществляется через преобразова-тель UART-USB.
Один из микроконтроллеров (BRAIN) на основе информации, посту-пающей с пульта управления, компьютера и контроллера датчиков положе-ния (SENS) генерирует управляющие сигналы для всех приводов телескопа: задает направление и скорость движения, производит расчет ускорения при разгоне и торможении.
Второй микроконтроллер (SENS) выполняет функцию часов звездного времени, обрабатывает прерывания, вызванные всеми датчиками состояния, передает полученную информацию в BRAIN, вычисляет текущие экватори-альные координаты телескопа и выводит их на LCD-монитор, производит вычисления, необходимые для предотвращения аварийных ситуаций таких, как опускание трубы телескопа ниже горизонта, перекручивание кабелей и т. п. В случае возникновения предаварийной ситуации сигнализирует и бло-кирует работу соответствующего привода.
Основная программа контроллера SENS в замкнутом цикле вычисляет текущее состояние телескопа и передает их контроллеру BRAIN по шине SPI. Прерывания, вызываемые сигналами от датчиков, изменяют данные о состоянии телескопа хранящиеся в оперативной памяти контроллера. Десять раз в секунду происходит прерывание в работе основной программы вызван-ное переполнением таймера. В этом прерывании вычисляются и обновляются показания LCD-монитора.
Контроллер BRAIN принимает информацию о желаемом состоянии те-лескопа с ручного пульта управления или от ЭВМ, сравнивает текущие зна-чения с желаемым и изменяет состояния своих выходов. Для реализации плавного разгона и торможения изменение значения скорости происходит 64 раза в секунду. Разгон до максимальной скорости происходит за 9 с.
Приводы реализованы на контроллерах Atmega8. Они принимают сиг-налы от BRAIN и формируют последовательность импульсов для управления шаговым двигателем.
Ручной пульт управления так же выполнен на Atmega8. Он преобразует информацию о нажатии клавиш в последовательный код и передает его мик-роконтроллеру BRAIN по асинхронной шине.

3.2 Выбор инструментальной системы координат, ограничения по точности, вычисление положения телескопа в реальном времени
Инструментальная система координат выбрана следующим образом: часовой угол увеличивается от точки юга через точку запада от 0 до 360º, расстояние от полюса мира изменяется от 0 до ±180º в зависимости от пере-кладки трубы телескопа. Эти координаты содержат информацию о положе-нии трубы относительно монтировки телескопа. Это необходимо для опти-мизации процедуры наведения, предотвращения перекручивания кабелей и опускания трубы телескопа ниже горизонта.
Переход от инструментальной системы координат к экваториальной осуществляется по формулам 1-3:
α=(S-tinstr)/1800, если δinstr ≥0   (1)
α=(S-tinstr-21600)/1800, если δinstr<0   (2)
δ=90°-|δinstr|/120   (3)
Вычисление занимает приблизительно 0.00025 с и производится 10 раз в секунду. С такой же частотой обновляются показания LCD-монитора.
Относительно невысокая точность определения координат – 30˝ связа-на с тем, что для хранения величин используются только два байта памяти контроллера. Такая точность вполне достаточна для наблюдений с панорам-ным приемником.
В персональный компьютер передаются инструментальные координа-ты.

3.3 Форматы передачи данных
В микроконтроллерах семейства «Mega» присутствуют различные ап-паратные модули для последовательной передачи данных. В системе управ-ления телескопом используются модули UART и SPI. Они были выбраны по причине легкости программирования в среде «CodeVision».
Связь между ручным пультом управления и контроллером BRAIN осуществляется по UART. Данные о нажатых клавишах передаются в трех байтах с проверкой четности. В первом байте информационной посылки на-ходится символ «N», который служит флагом начала передачи нового пакета. В двух других байтах содержатся: направление движения по осям, значение максимальной скорости движения, изменение фокуса, сигналы управления крышкой зеркала и смены фокусов Несмита.
Обмен данными с компьютером осуществляется также по UART. От компьютера приходят три байта идентичных данным с ручного пульта управления. В обратную сторону пересылаются текущие инструментальные координаты и состояние датчиков крышки зеркала, фокуса, крыши павильо-на, положения плоского зеркала Несмита. Эти же данные передаются от кон-троллера SENS к контроллеру BRAIN по SPI [13].
Управление драйверами шаговых двигателей осуществляется по парал-лельной четырехбитной шине, каждый бит которой соответствует: скорости (задается частотой следования импульсов), направлению, режиму деления шага.
Информация на LCD-монитор передается по последовательно-параллельной шине программно реализованной в Си-компиляторе «CodeVi-sion».


5 Практическая реализация системы управления телеско-пом
5.1 Микроконтроллеры BRAIN и SENS
Все контроллеры, кроме BRAIN, работают на частоте 14.318180 МГц. Для микроконтроллера BRAIN (см. рис. 15) используется кварцевый резона-тор с несколько большей частотой 14.745600 МГц. Это позволило получить точное значение частоты для звездного привода телескопа.
Использование микроконтроллеров позволило существенно упростить разработку, разводку и реализацию печатных плат. Печатные платы выпол-нены в одном размере – 80х60 мм. На них расположены: панель крепления микроконтроллера, кварцевый резонатор для тактирования внутреннего ге-нератора, разъемы для программирования микроконтроллера и ввода/вывода необходимой информации, несколько фильтрующих конденсаторов и сам микроконтроллер. В дальнейшем для разработки устройств на основе микро-контроллеров предполагается использовать стандартные печатные платы.
5.2 Драйвер шагового двигателя
Драйвер шагового двигателя реализован на основе микроконтроллера Atmega8 (см. рис. 16). Сигнал ШИМ формируется на выводах ОС1А и ОС1В таймера/счетчика Т1. После фильтрации на пассивном ФНЧ первого порядка сигнал поступает на инвертирующий вход компаратора LM393. На неинвер-тирующий вход поступает сигнал с датчика тока, протекающего через об-мотки двигателя. Сигнал с выхода компаратора открывает (если опорное на-пряжение превышает напряжение с датчика тока) и закрывает (если опорное напряжение ниже напряжения датчика тока) ключевые транзисторы в цепи питания двигателя. Для согласования работы четырех транзисторов применя-ется дополнительный сигнал микроконтроллера (Port C0-C3) и четыре эле-мента «И» в составе микросхемы SN74AC08. Максимальный ток через об-мотки регулируется соотношением резисторов R2 и R3.
Драйвер шагового двигателя управляется четырьмя сигналами: Clock, Direction, Mode1, Mode2 (Port D0-D3, соответственно). Сигналы Mode1 и Mode2 определяют величину деления шага (00 – 1/32, 01 – 1/16, 10 – 1/8, 11 – 1/2). Direction – направление вращения двигателя. Частота следования мик-рошагов равна частоте сигнала Clock.

5.3 Инкрементные энкодеры и другие оптические датчики
Для определения координат телескопа используются инкрементные оп-тические датчики угла, установленные на валу двигателя. Прерывающий элемент представляет собой алюминиевый диск с отверстиями (75 отверстий на приводе оси прямого восхождения и 63 – на приводе оси склонения). Ко-личество отверстий соответствует точности позиционирования в 30˝. Элек-тронная схема энкодера приведена на рис. 17. Сигнал, возникающий при прохождении метки прерывателя над оптическим датчиком KTIR0711S, по-ступает на инвертирующий вход компаратора LM393. Опорное напряжение снимается с делителя R3-R4, и подается на неинвертирующий вход. Для по-давления шума переключения введена положительная обратная связь через резистор R5. Использование компараторов с выходом по схеме с открытым коллектором позволяет избежать помех при передаче сигнала с энкодера на относительно большие расстояния [16]. Аналогичные датчики используются и в других модулях телескопа.

5.4 Пульт ручного управления
Система управления телескопом предполагает, как ручное управление с пульта или компьютера, так и автоматический режим, управляемый про-граммой наблюдений с компьютера.
На данный момент разработан и изготовлен пульт ручного управления (см. рис. 18). На пульте расположены четыре кнопки наведения по прямому восхождению («альфа + », «альфа - ») и склонению («дельта + », «дельта - »). Две кнопки фокусировки («фокус + », «фокус - »), четыре кнопки, соответст-вующие четырем скоростям наведения (1-ая «стоп», 2-ая «сидерическая», 3-тья «2х сидерическая», 4-ая «максимальная»). Индикация скорости осущест-вляется светодиодами соответствующего цвета: красный – «стоп», желтый – «сидерическая», зеленый «2х сидерическая», синий – «максимальная». А также кнопка открытия/закрытия главного зеркала и кнопка поворота третье-го, плоского зеркала для быстрой смены приемной аппаратуры, располагае-мой в обоих фокусах Несмита.
Сигналы о нажатии кнопок поступают на входы микроконтроллера Atmega8 и преобразуются в два бита. Информация передается по интерфейсу UART в контроллер BRAIN.

5.5 Преобразователь UART-USB
Для связи телескопа с компьютером используется FT232R – конвертер интерфейса USB в UART

5.7 Результаты измерений параметров системы управления
Первые испытания системы управления показали, что максимальная скорость наведения телескопа достигает 3 º/с. При использовании ручного пульта управления система работает стабильно. Разгон телескопа до макси-мальной скорости происходит за 9.5 с. Энкодеры телескопа работают ис-правно без пропуска импульсов. Выяснилось, что использование переменной величины деления шага для управления скоростью приводов не обязательно. Микрошаговый режим с делением шага на 1/32 очень хорошо работает как на низких скоростях, так и на максимальной скорости. Момент, развиваемый двигателями ДШИ-200-1, достаточен для нормальной работы телескопа. Од-нако, для повышения надежности, желательно заменить их более мощными – ДШИ-200-3. Это позволит увеличить момент в четыре раза без существен-ных изменений в схеме драйвера.

Оффлайн krusshАвтор темы

  • *****
  • Сообщений: 2 460
  • Благодарностей: 112
  • http://www.soulfulbits.com/
    • Сообщения от krussh
Прошивки здесь.

Оффлайн krusshАвтор темы

  • *****
  • Сообщений: 2 460
  • Благодарностей: 112
  • http://www.soulfulbits.com/
    • Сообщения от krussh
вопрос о предоставлении программы для компьютера (та, что управляет и принимает данные) пока решается. Писал наш хороший товарищ, думаю он разрешит.

Суворов Владимир

  • Гость
Ав-эры, ав-эры,
Гоу-тушка как холера,
Привязалась ко всем подряд,
Лучше выпить сразу яд,
Чем писать по новой прогу!
Друг напишет, слава Богу ;D
« Последнее редактирование: 26 Июл 2007 [18:05:34] от Суворов Владимир »

Оффлайн krusshАвтор темы

  • *****
  • Сообщений: 2 460
  • Благодарностей: 112
  • http://www.soulfulbits.com/
    • Сообщения от krussh
Еще картинки.
И не совсем банальная го-тушка. Несколько больше возможностей.

Оффлайн DVE

  • *****
  • Сообщений: 1 856
  • Благодарностей: 18
    • Сообщения от DVE
Была мысль сделать нечто Goto-подобное, но с графическим экраном и отображением звездной карты :)
правда дальше мыслей дело не пошло...  ;D
Celestron Nexstar 8", 80ED APO (был), ETX-125 (был), SW909 (был)

Оффлайн lipaal

  • *****
  • Сообщений: 2 941
  • Благодарностей: 50
    • Сообщения от lipaal
Вот выдержки из курсовой моего студента-друга-коллеги А. Попова (x-man)


А вот такое предложение ко всем, кто строит микроконтроллерные системы управления:

Может Всем провести унификацию и выработать стандарт форума "astronomy.ru"?
1) Движки и драйвер - две схемы на два варианта двигателей с унифицированными сигналами управления.
2) Унифицированный пульт - на матрице с избыточным количеством кнопок.
3) Унифицированный жк-экран с контроллером.

А далее - различные варианты микроконтроллеров и прошивок - простые/сложные, с го-то и без, с фокусерм/без, под разные редукторы и кол-во шагов, на азимутал/экваториал с энкодерами/без и т.д. и т.п.
Заложить различные протоколы.
Выбрать микроконтроллер, который имеет большой запас по параметрам (озу/пзу/ I/O) и имеющий не особо сложный программатор.

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

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

Насколько я понял, где то так этот подход и заложил Попов (x-man) - так может либо принять этот стандарт и конструировать и писать под него, либо новый заложить?
« Последнее редактирование: 26 Июл 2007 [23:34:41] от lipaal »
Александр.
DS F750X150 на LXD-55, Neximage, Canon 400D, Ю37МС.
.....
Сайга-20К, ТОЗ106, ТОЗ-34, Барс4-223  - смерть фонарям!!!!!!

Сообщений kismet-а не вижу

andreichk

  • Гость
Цитата
Может Всем провести унификацию и выработать стандарт форума "astronomy.ru"?
Пробовали уже, нифига не получилось.Всё равно каждый по-своему лепит

Суворов Владимир

  • Гость
Я не думаю, что стандарт, как таковой нужен. Люди, которые пишут что-то на этом форуме
достаточно индивидуальны.  А творчество безгранично.
Смотрите и выбирайте что вам ближе.

Оффлайн DVE

  • *****
  • Сообщений: 1 856
  • Благодарностей: 18
    • Сообщения от DVE
Может Всем провести унификацию и выработать стандарт форума "astronomy.ru"?
1) Движки и драйвер - две схемы на два варианта двигателей с унифицированными сигналами управления.

ИМХО делать монтировку с нуля на своих движках всё-таки сложновато.

Более интересно и практично сделать свой пульт, подходящий например к EQ5/6 и умеющий посылать команды этой монтировке по стандартному порту. А уж на сам пульт можно наворотить что угодно, хоть цветной 5" экран или MP3 плеер, по вкусу  ;D
Celestron Nexstar 8", 80ED APO (был), ETX-125 (был), SW909 (был)

Оффлайн lipaal

  • *****
  • Сообщений: 2 941
  • Благодарностей: 50
    • Сообщения от lipaal

Более интересно и практично сделать свой пульт, подходящий например к EQ5/6 и умеющий посылать команды этой монтировке по стандартному порту. А уж на сам пульт можно наворотить что угодно, хоть цветной 5" экран или MP3 плеер, по вкусу  ;D

Ну вот у меня сейчас делается привод шаговиком 1,8гр с редукций примерно 1,2 с передачей зубчатым ремнем (кстати идеальный вариант - без люфта), а у кого то редуктор с редукцией на 15-20 раз.
То есть варианты разные могут быть...
В этом отношении Павел Бахтинов поступил очень по доброму ("Схема управления для монтировок с шаговыми двигателями"), предусмотрев разные редукции и движки - а вот остальные делают по то, что находят.
А была бы унификация - было проще...

Да, кстати, а вот пульта самодельного для ЕКУ-5 со стандартным портом для подключения к ноуту я и не видел....
Или вариант го-то на микроконтроллере с разными шаговиками.

А ведь насколько было бы хорошо при модульной системе - начать с простого пульта, а далее потихоньку его модернизировать до гоуту.... ::) ::)
Александр.
DS F750X150 на LXD-55, Neximage, Canon 400D, Ю37МС.
.....
Сайга-20К, ТОЗ106, ТОЗ-34, Барс4-223  - смерть фонарям!!!!!!

Сообщений kismet-а не вижу

Оффлайн DVE

  • *****
  • Сообщений: 1 856
  • Благодарностей: 18
    • Сообщения от DVE
Да, кстати, а вот пульта самодельного для ЕКУ-5 со стандартным портом для подключения к ноуту я и не видел....

А зачем ноут? Весь прикол в том и состоит, чтобы всю математику и экран засунуть в пульт, по себестоимости деталей можно наверное уложиться баксов в 200 (экран+проц+память).
Celestron Nexstar 8", 80ED APO (был), ETX-125 (был), SW909 (был)

Оффлайн krusshАвтор темы

  • *****
  • Сообщений: 2 460
  • Благодарностей: 112
  • http://www.soulfulbits.com/
    • Сообщения от krussh
Прелесть нашей разработки и состоит в универсальности. Переход к другим редукторам - двигателям осуществляется просто заменой констант в коде Си. Так же регулируются и другие параметры. Единственное ограничение - параллактическая монтировка и униполярные шаговики (5-6 выводные). Кроме того, Вы можете использовать отдельные узлы системы - драйвер ШД или SENS или....
Сложные вычисления и связь с сетью выполняет компьютер, но система может работать и без лаптопа.

Оффлайн krusshАвтор темы

  • *****
  • Сообщений: 2 460
  • Благодарностей: 112
  • http://www.soulfulbits.com/
    • Сообщения от krussh
Прошли первые серьезные испытания системы управления. Наблюдали запуск спутника "Радарсат" по заранее рассчитанным точкам орбиты. Всего 8 точек. Скорость движения до 4 град/сек. Разгон до полной скорости - 5 секунд.  Точность наведения - 30 секунд дуги.
Сейчас система может работать по "расписанию" составленному заранее. Использование LCD абсолютно невозможно после -10 Цельсия((( Так что зимой только с лаптопа работать.

Грин

  • Гость
Вот и получается, что проще всего подключить ХЕК5, ЕКУ6про (ИМХО наиболее юзаемые из приличных) через ЕКУМОД к ноуту и не мучиться ваянием пульта, который потом на морозе уснёт.
Ноут хоть так, хоть этак, а для астофото нужен всё равно...

Оффлайн Hornet

  • *****
  • Сообщений: 603
  • Благодарностей: 0
    • Сообщения от Hornet
Разработка интересная . Но , как я понял , стандартный пульт EQ-5  этим заменить трудно .

Грин

  • Гость
Разработка интересная . Но , как я понял , стандартный пульт EQ-5  этим заменить трудно .
Если это про ЕКУМОД - он по возможностям знааачительно превосходит стандартый пульт СинСкан.

Оффлайн krusshАвтор темы

  • *****
  • Сообщений: 2 460
  • Благодарностей: 112
  • http://www.soulfulbits.com/
    • Сообщения от krussh
Подключить к Этому стандартный пульт было весьма затруднительно)))

Оффлайн Hornet

  • *****
  • Сообщений: 603
  • Благодарностей: 0
    • Сообщения от Hornet
Возможно я не так выразился . Мне интересно движки  EQ-5 подключить к этому пульту .

Оффлайн krusshАвтор темы

  • *****
  • Сообщений: 2 460
  • Благодарностей: 112
  • http://www.soulfulbits.com/
    • Сообщения от krussh
Без проблем можно подключить любые униполярные шаговые двигатели (5 или 6 выводов). Для биполярных сейчас делаем новые драйверы. С другими вариантами - не так просто.
Кстати, схемы и прошивки слегка изменились. Теперь система автоматом меняет деление шага от 1/32 до 1/8 для быстрого движения. Добавлены проверки на перекручивание кабелей. Проверка датчиков крышки, крыши и прочее.
Новые варианты можем выложить или отправить в почту.