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


A A A A Автор Тема: Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ  (Прочитано 35731 раз)

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

Оффлайн Денис Никитин

  • *****
  • Сообщений: 3 762
  • Благодарностей: 74
  • Keep your eyes open!
    • Skype - n.dennis
    • Сообщения от Денис Никитин
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #80 : 14 Июл 2004 [09:35:01] »
Вот как в очень упрощенном виде выглядит программа Бартелса.

while(!Quit)
{
     SequentialTaskController(void);

     do
     {
           for(Ix = 0; Ix <= (PWM * MsDelayX); Ix++)
          {
                 outportb(1);
          }

          for(Ix = 0; Ix <= MsPause; Ix++)
         {
                outportb(0);
         }    
     }
      while(!TimerTick);    
}

Замечания:
1. Под функцией SequentialTaskController() понимаются любые процессы не связанные с отработкой ШИМ, например преобразование координат, обработка меню и команд клавиатуры, и т.д.
2. Функция outportb() на самом деле выглядит иначе, но в данном случае запись outportb(1) следует понимать так – в LPT порт выводится лог. 1, outportb(0) – соответственно лог. 0.
3. В первом цикле for в LPT порт выводится лог. 1 такое число раз подряд, которое задается произведением PWM * MsDelayX.
4. Во втором цикле for в LPT порт выводится лог. 0 такое число раз подряд, которое задается параметром MsPause.

Таким образом если:
 PWM = 100
 MsDelayX = 1
 MsPause = 0.
Имеем следующие параметры ШИМ:
Частота = 4кГц (для данного частного случая)
Рабочий цикл = 100%
Средний ток в обмотке = 100%

Это в частности означает что программу Бартелса улучшить нельзя! Потому, что при отработке функции SequentialTaskController(), несколько милисекунд времени ШИМ не генерируется. За это время, если ротор находится в микрошаговой позиции (где-то между фазами) он теряет положение откатываясь в ту или иную сторону, после чего при возобновлении генерации ШИМ снова возвращается на место – в результате вибрация. Да это и слышно по рваному ритму работы шаговика. Тут чем быстрее комп, тем лучше, так как функция SequentialTaskController() выполняется быстрее. Кардинальное улучшение возможно только при использовании аппаратного ШИМ генератора, тут убиваются сразу два зайца – ШИМ генерируется постоянно, и нет проблем с низкой частотой ШИМ.

Оффлайн Денис Никитин

  • *****
  • Сообщений: 3 762
  • Благодарностей: 74
  • Keep your eyes open!
    • Skype - n.dennis
    • Сообщения от Денис Никитин
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #81 : 14 Июл 2004 [10:07:12] »
Паша, ответь пожалуйста при
MsDelayX 1                        
MsPause 0
На компьютере Celeron 800 частота ШИМ увеличивается?

Будь добр попробовать вот этот config файл, просто сохрани его вместо оригинального и ничего в нем не меняй, я уже все поменял. Единственное поменяй имя с my-config.txt на config.dat

Оффлайн Павел Бахтинов

  • *****
  • Сообщений: 2 499
  • Благодарностей: 110
    • Сообщения от Павел Бахтинов
    • Искусство астрофотографии
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #82 : 14 Июл 2004 [11:00:47] »
Паша, ответь пожалуйста при
MsDelayX 1                        
MsPause 0
На компьютере Celeron 800 частота ШИМ увеличивается?
Денис, точно смогу сказать вечером, т.к. тот комп - дома. Но, повторюсь, на первый взгляд, я не заметил вообще никакой разницы во временных характеристиках (кроме, естественно, большего процента "мусора" на более медленной машине - следствие работы процедуры, названной тобой SequentialTaskController).
Про новый вариант конфига через часок-другой отвечю.

Оффлайн Денис Никитин

  • *****
  • Сообщений: 3 762
  • Благодарностей: 74
  • Keep your eyes open!
    • Skype - n.dennis
    • Сообщения от Денис Никитин
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #83 : 14 Июл 2004 [12:01:29] »
Цитата
Но, повторюсь, на первый взгляд, я не заметил вообще никакой разницы во временных характеристиках
Если это подтвердится, то будет иметь место тот факт, что контроллер LPT порта не в состоянии проталкивать биты чаще чем один за 2,5 микросекунды, не зависимо от типа машины.

С новым вариантом config.dat файла ожидается частота ШИМ 8кГц.

Кстати "мусор" исходным кодом не предусмотрен. ;D То есть функций вывода в порт там нигде нет, странно, может помехи?!
« Последнее редактирование: 14 Июл 2004 [12:11:02] от Денис Никитин »

v.bobkin

  • Гость
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #84 : 14 Июл 2004 [14:50:24] »
Если это подтвердится, то будет иметь место тот факт, что контроллер LPT порта не в состоянии проталкивать биты чаще чем один за 2,5 микросекунды, не зависимо от типа машины.
а, возможно, зависимо от тактовых частот локальной шины и контроллера ::)

Цитата
Кстати "мусор" исходным кодом не предусмотрен. ;D То есть функций вывода в порт там нигде нет, странно, может помехи?!

или длительность последовательности задач заметно различна

Оффлайн Павел Бахтинов

  • *****
  • Сообщений: 2 499
  • Благодарностей: 110
    • Сообщения от Павел Бахтинов
    • Искусство астрофотографии
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #85 : 14 Июл 2004 [17:25:01] »
Денис, с твоим последним конфигом на 486DX4-100 получилось 8кГц (PWM=433), заполнение 0-100%. Если же в твоем варианте вместо MaxPWM=50 подставить MaxPWM=100 (далее PWM(0)=50:0, PWM(1)=50:14,.. и т.д.), получается 4кГц с заполнением 0-50%.

Цитата
я не заметил вообще никакой разницы во временных характеристиках
Тут я был не прав. Видимо, частоты показались одинаковыми, потому что для их установки пользовался функцией AutoMsParams (т.е. сравнивал при близких значениях PWM), а на получающиеся при этом MsDelayX, MsPause не смотрел. Сейчас попробовал на P4-1400, для последней конфигурации (MsDelayX=1, MsPause=0, MaxPWM=50) получается 13кГц (PWM=704).

Кстати "мусор" исходным кодом не предусмотрен. ;D То есть функций вывода в порт там нигде нет, странно, может помехи?!
Зато есть возможность "невывода" (или несвоевременного вывода) в порт, если процессор занят чем-то еще. Под "мусором" я имел в виду любые отклонения от периодичности ШИМ-последовательности. В основном, паразитные импульсы имеют уровень лог.нуля (они наиболее заметны на фоне рабочих импульсов при заполнении, близком к 100%), но точный их характер простым осциллографом выявить трудно, ввиду псевдослучайности их появления.

Кардинальное улучшение возможно только при использовании аппаратного ШИМ генератора, тут убиваются сразу два зайца – ШИМ генерируется постоянно, и нет проблем с низкой частотой ШИМ.
С этим я полностью согласен. Денис, так ты "ковыряешь" исходники с целью чисто программной оптимизации работы с существующим "железом", или все-таки с целью встраивания в программу управления внешним аппаратным ШИМ-контроллером?

Оффлайн Денис Никитин

  • *****
  • Сообщений: 3 762
  • Благодарностей: 74
  • Keep your eyes open!
    • Skype - n.dennis
    • Сообщения от Денис Никитин
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #86 : 15 Июл 2004 [08:13:18] »
Паша, спасибо тебе за участие!

Цитата
С этим я полностью согласен. Денис, так ты "ковыряешь" исходники с целью чисто программной оптимизации работы с существующим "железом", или все-таки с целью встраивания в программу управления внешним аппаратным ШИМ-контроллером?
Контроллер с аппаратным ШИМом у меня уже впринципе есть (на базе PIC16F876), микропрограмма написана, но он довольно сырой. Пока интерес к нему чисто спортивный, пока. Хотя моторы в микрошаге (40 мкш/шаг) с аппаратным контроллером работают просто сказочно.

А с исходниками Бартелса я разбираюсь именно для оптимизации существующей системы...и ведь можно, можно выжимать максимум из настроек. И ведь я практически не понимал значения параметров в config файле, пока в исходный код не залез.
« Последнее редактирование: 15 Июл 2004 [08:15:37] от Денис Никитин »

Оффлайн Владимир Николаевич

  • *****
  • Сообщений: 24 074
  • Благодарностей: 436
  • Takahashi Россия и QHYCCD Poccия
    • Skype - gromozeka12    вайбер +7 903 610-62-15
    • Сообщения от Владимир Николаевич
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #87 : 15 Июл 2004 [08:24:13] »
Денис ты уже получил японские шаговики? Я тоже такие взял. Что по ним скажешь может быть лучше поставить их вместо  ДШИ200-1.
Клевцов 470мм - 2экз, МАК Сантел 420 1\8 на передержке,  Доб 355мм SS, Доб 254, МАК Сантел 230мм, АПО 180мм на Losmandy Titan, подзорная труба 102\900ED SW,  бино 70ED, 70 Non-ED, 10х42ED, 10х50ED.

Оффлайн Денис Никитин

  • *****
  • Сообщений: 3 762
  • Благодарностей: 74
  • Keep your eyes open!
    • Skype - n.dennis
    • Сообщения от Денис Никитин
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #88 : 15 Июл 2004 [10:20:16] »
Цитата
Денис ты уже получил японские шаговики? Я тоже такие взял. Что по ним скажешь может быть лучше поставить их вместо  ДШИ200-1.
Получил...пока могу сказать только по поводу внешнего вида - внешний вид отличный! Погонять их я собираюсь в ближайшие выходные. Антон сказал, что они чудесно работают в микрошаге, стало быть так оно и есть.

Оффлайн Денис Никитин

  • *****
  • Сообщений: 3 762
  • Благодарностей: 74
  • Keep your eyes open!
    • Skype - n.dennis
    • Сообщения от Денис Никитин
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #89 : 15 Июл 2004 [10:25:24] »
Паша а ты как программу запускал, чисто под DOS или в Windows в режиме эмуляции? И еще какой тип порта у тебя в Биосе задан SPP, EPP?

Цитата
Зато есть возможность "невывода" (или несвоевременного вывода) в порт, если процессор занят чем-то еще. Под "мусором" я имел в виду любые отклонения от периодичности ШИМ-последовательности. В основном, паразитные импульсы имеют уровень лог.нуля
Понял, скорее всего возникновения паразитного импульса лог. 0 вызвано тем что процессор в этот момент прерывания обрабатывает.

« Последнее редактирование: 15 Июл 2004 [10:47:15] от Денис Никитин »

Оффлайн Павел Бахтинов

  • *****
  • Сообщений: 2 499
  • Благодарностей: 110
    • Сообщения от Павел Бахтинов
    • Искусство астрофотографии
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #90 : 15 Июл 2004 [15:44:34] »
Паша а ты как программу запускал, чисто под DOS или в Windows в режиме эмуляции? И еще какой тип порта у тебя в Биосе задан SPP, EPP?
На P4-1400 и Celeron-800 стоит Windows-98, на 486DX4-100 - Windows-95. Загружался через стартовое меню (по F8), по варианту "Safe mode command prompt only". Также пробовал загружаться с дискетки, сделанной на этом же компьютере ("format a: /s"), и даже с дискетки, сделанной на совсем уж древней машине с DOS 6.22 - разницы никакой не заметил.

Режим LPT в BIOS-е на P4-1400 стоит ECP+EPP, на Celeron-800 - скорее всего, тоже что-то в этом роде (вечером посмотрю), а на 486DX4-100 из BIOS-а вообще не управляется (там порты не интегрированы в материнку, стоит отдельная карточка). Попробовал поменять на P4-1400 ECP+EPP --> Normal, разницы также незаметно (это, судя по индицируемому программой значению PWM, осциллограф лень опять тащить).

PS. Кстати, по поводу частот на Celeron-800 я, оказывается, почти и не ошибался, разница с 486DX4-100, действительно, минимальная - процентов на 5 всего.

Оффлайн Павел Бахтинов

  • *****
  • Сообщений: 2 499
  • Благодарностей: 110
    • Сообщения от Павел Бахтинов
    • Искусство астрофотографии
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #91 : 16 Июл 2004 [10:26:17] »
Попереключал режимы порта на Celeron-800 (варианты: EPP, EPP+ECP, Bi-direction): результат от этого никак не зависит, что по осциллографу, что по индикатору программы (MsDelayX=1, MsPause=0, MaxPWM=50 дает PWM=455, чуть больше 8кГц).

Оффлайн Денис Никитин

  • *****
  • Сообщений: 3 762
  • Благодарностей: 74
  • Keep your eyes open!
    • Skype - n.dennis
    • Сообщения от Денис Никитин
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #92 : 22 Июл 2004 [08:01:59] »
Павлу Бахтинову низкий поклон за проделанную работу!

Оффлайн Денис Никитин

  • *****
  • Сообщений: 3 762
  • Благодарностей: 74
  • Keep your eyes open!
    • Skype - n.dennis
    • Сообщения от Денис Никитин
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #93 : 22 Июл 2004 [08:23:54] »
Вот значить какая штука получается. Имеем при настройках MsDelayX 1, MsPause 0, MaxPWM 100 частоту ШИМ 4кГц, причем практически одинаковую на двух, как бы разных машинах 486DX4-100 и Celeron 800. Период ШИМ при этом 250 мкс, поделим на MaxPWM получим 2,5 мкс. То есть для того, что бы вывести 1 импульс в порт требуется 2,5 мкс. Вывод в порт осуществляется функцией void outportb(portid, value) из заголовка dos.h

Программисты на С есть? Вот вопросик, вызов функции ведь имеет свои издержки, так? Нужно сначала некоторые регистры сохранить, потом выполнить нужные действия, затем вернуть значения сохраненных регистров на место. Так вот, а если функцию outportb переписать на ассемблере и вставлять как inline code, будет ли реальный выигрыш по времени?

Оффлайн Anton

  • *****
  • Сообщений: 7 273
  • Благодарностей: 77
    • Сообщения от Anton
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #94 : 22 Июл 2004 [12:17:32] »
Так вот, а если функцию outportb переписать на ассемблере и вставлять как inline code, будет ли реальный выигрыш по времени?

Ощутимого выигрыша не стоит ожидать. Компиляторы современные все очень хорошо оптимизируют. Ну а в inline разворачивают вызовы первым делом.

Оффлайн Mihail Sedyh

  • *****
  • Сообщений: 5 974
  • Благодарностей: 34
    • Сообщения от Mihail Sedyh
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #95 : 22 Июл 2004 [17:08:56] »
Добрый день, господа!
Чуть-чуть не в тему, но я уже пару раз натыкался на такой вопрос в форуме, но ни разу не нашел ответа.
Кто-нибудь что-нибудь может сказать о работоспособности данного девайса применительно к приводу полярной оси на немце (понятно, что управление генератором придется переделывать):

http://www.masterkit.ru/main/set.php?num=202

Ноута у меня нет, и в ближайшее время не предвидится. Задача-минимум - привод одной оси.
З.Ы. Реально оценивая свои силы/возможности Бартелса не потяну.
"Алькор", Бинокль 10х50, Coronado PST, доб 235/1157, МТ-3С

Онлайн Пецык Алексей

  • *****
  • Сообщений: 6 344
  • Благодарностей: 246
  • ТМШ, ТАЛ 100RSMT, Доб 10", Доб 18", БАС 30х90
    • Сообщения от Пецык Алексей
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #96 : 22 Июл 2004 [17:48:49] »
Вот тут посмотреть можно, может найдется полезная информация:
https://astronomy.ru/forum/index.php?board=7;action=display;threadid=5099

Оффлайн Mihail Sedyh

  • *****
  • Сообщений: 5 974
  • Благодарностей: 34
    • Сообщения от Mihail Sedyh
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #97 : 22 Июл 2004 [18:28:51] »
Спасибо, Алексей.
Эту ветку я крнечно читал, но, резюмируя, ничего приемлемого кроме:
" Плата из кита больше подошла бы для часовика на шаговике." не нашел.
А именно в таком качестве я его и собираюсь использовать.
Может кто подскажет какие еще движки, кроме рекомендованного на Ките, можно использовать с этой платой?  
"Алькор", Бинокль 10х50, Coronado PST, доб 235/1157, МТ-3С

Оффлайн Mihail Sedyh

  • *****
  • Сообщений: 5 974
  • Благодарностей: 34
    • Сообщения от Mihail Sedyh
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #98 : 26 Июл 2004 [10:55:48] »
Господа! Нужно Ваше квалифицированное мнение.
Извиняюсь, если тема уже поднималась, сам не натыкался, а подробно искать - нет терпения.
На выходных разбирал свой хлам у родителей. Наткнулся на чудо отечественного компьютеростроения - принтер ЕС 7245 , не использовавшийся уже лет 8 по причине морального устаревания, но в полностью рабочем состоянии. Стал прикидывать пригодность егойных шаговиков в телескопостроении: точность движков - довольно высокая(ИМХО), мощность тоже (сей 8-10 кг. девайс при возврате коретки перемещался по столу на резиновых ножках :)), прикидываю какие могут быть двигатели (вскрыть и поковыряться - не было времени) и можно ли ими управлять Мастеркитовской платой (см.выше) ???........
И ТУТ, БАБАХ....!!!!  :o Меня торкнуло, Йокрный-бабай, - да в этом же принтере уже есть схема управления именно этими движками с LPT-интерфейсом, возможностью загрузки микропрограмм в ОЗУ и ПЗУ и прочими наворотами, плюс стабилизированный помехозащищенный импульсный блок питания для всего этого дела и кое-какая механника. Проблема адаптации в электрической доработке схемы с сильно избыточными возможностями  и  написании соответствующего ПО.
Возможно даже есть принципиальноая схема принтера (документация к нему весила почти столько же, сколько весит сам принтер - отеч. промышленность рулит :) ).
Люди, помогите!!! Ну скажите мне что все это ахинея, а то меня ПРЕТ :-X.
"Алькор", Бинокль 10х50, Coronado PST, доб 235/1157, МТ-3С

Оффлайн Владимир Николаевич

  • *****
  • Сообщений: 24 074
  • Благодарностей: 436
  • Takahashi Россия и QHYCCD Poccия
    • Skype - gromozeka12    вайбер +7 903 610-62-15
    • Сообщения от Владимир Николаевич
Re:Бартелс. ЭЛЕКТРОНИКА, КОМПОНЕНТЫ
« Ответ #99 : 26 Июл 2004 [11:15:18] »
можно ли ими управлять Мастеркитовской платой (см.выше) ???........

Мастеркитовские платы для управления двигателями 4-х и 6-ти выводными очень просты и удобны именно для часового привода. Как минус отсутствие микрошага и полушага. На данный момент у одного знакомого любителя на этой плате и двигателе 1.8 град\шаг она работает и позволяет получать в 3-х метровом фокусе 30 сек негидируемые экспозиции на цифровой камере. Характеризуется крайней простотой - набираешь число шагов в сек и их количество, направление  и поехали. А так как я пока не ввел в строй Бартеловскую схему, и сейчас пользуюсь схемой Go-To от Владимира Суворова и к сожалению не смог обеспечить на ней точного фотографического ведения \так как немогу точно  задать скорость и попадаю между соседними значениями задержки в мс\ - в результате временно планирую перейти на Китовскую систему управления на ней все работает просто и грамотно, причем много раз мучаясь с подсоединением двигателей в схеме Бартелса и в Китовской схеме заметил сложность подсоединения в первом случае и простоту подсоединения во втором.
« Последнее редактирование: 26 Июл 2004 [11:37:50] от Vladim »
Клевцов 470мм - 2экз, МАК Сантел 420 1\8 на передержке,  Доб 355мм SS, Доб 254, МАК Сантел 230мм, АПО 180мм на Losmandy Titan, подзорная труба 102\900ED SW,  бино 70ED, 70 Non-ED, 10х42ED, 10х50ED.