Список форумов Форум @ BelAstro.Net Форум @ BelAstro.Net
Форум белорусской любительской астрономической сети
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   Администрация форумаАдминистрация форума   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Я начал [читать] ее, с большим удовольствием прочел страниц 30 и тогда вдруг понял, что в этом духе автор может продолжать до бесконечности, и нет той силы, которая ему помешала бы. /Б. Шоу/

Самодельный астрограф №2

зарегистрированных: 0, скрытых: 0 и гостей: 0
Зарегистрированные пользователи: Нет
На страницу Пред.  1, 2
Начать новую тему   Ответить на тему    Список форумов Форум @ BelAstro.Net -> Оборудование для астрофотографии
Предыдущая тема :: Следующая тема  
Автор Сообщение
aeromash
ЛА

Зарегистрирован: 03.01.2009

Сообщения: 2625
Благодарности: 12



Добавлено: Вт Фев 23, 2016 14:01    Заголовок сообщения: Ответить с цитатой

Wink
_________________
Когда на свет появляется истинный гений, то узнать его можно хотя бы потому, что все тупоголовые объединяются в борьбе против него. Дж. Свифт
Хочу шапку Перельмана, жилетку Вассермана и ботинки Эйнштейна!
(SKYPE - yuri.rabishko, МТС - +375-29-7518860 Юрий Рабышко)
"Все пришельцы в Россию будут гибнуть под Смоленском" - фильм "Формула любви"
Вернуться к началу
aeromash сейчас оффлайн  Посмотреть профиль Отправить личное сообщение [hidden] Посетить сайт автора
petrovicch
ЛА

Зарегистрирован: 14.09.2013

Сообщения: 458
Благодарности: 2

Откуда: Беларусь, г.Ивацевичи

Добавлено: Вс Мар 27, 2016 14:56    Заголовок сообщения: Ответить с цитатой

Всем привет!
Пришли мой драйвер и ардуино нано из Китая. Вчера до двух ночи "колхозил" плату, собирал все до кучи, читал документацию.
Сегодня таки завел всю конструкцию. Тикает!
Собрал по схеме на фото. Перемычка стоит на М1. Если я верно понял даташит - это режим 1\4 шага. Перемычку поставил экспериментально. Именно в этом режиме мой мотор максимально четко "шагает" и усилие на валу довольно приличное. Ток выставил в районе 0,5А. Мотор теплый.
Скетч загружен такой:
Цитата:
int Motor1dir = 12;
int Motor1step = 13;
void setup ()
{
pinMode(Motor1dir, OUTPUT);
pinMode(Motor1step, OUTPUT);
}
void loop ()
{
digitalWrite(Motor1dir, HIGH);
digitalWrite(Motor1step, LOW);
for (int i=0;i<1000; i++)
{
delay(200);
digitalWrite(Motor1step, HIGH);
delay(200);
digitalWrite(Motor1step, LOW);
}
delay(200);

}

Один полный оборот вал делает за 153,5 сек, а мне нужно - 173,913 сек.
Подскажите, кто знает, что поменять в скетче для этого?

_________________
Celestron SkyMaster 20x80 (71018)
Вернуться к началу
petrovicch сейчас оффлайн  Посмотреть профиль Отправить личное сообщение [hidden]
Ветер
ЛА

Зарегистрирован: 21.08.2014

Сообщения: 1237
Благодарности: 117



Добавлено: Вс Мар 27, 2016 15:40    Заголовок сообщения: Ответить с цитатой

Скорость определяется паузой между вот этими командами.
digitalWrite(Motor1step, HIGH);
-- пауза
digitalWrite(Motor1step, LOW);

Все остальные паузы можно убрать (они не нужны) и подбирать длительность этой в районе 450 мс.
Вернуться к началу
Ветер сейчас оффлайн  Посмотреть профиль Отправить личное сообщение Посетить сайт автора
petrovicch
ЛА

Зарегистрирован: 14.09.2013

Сообщения: 458
Благодарности: 2

Откуда: Беларусь, г.Ивацевичи

Добавлено: Вс Мар 27, 2016 17:59    Заголовок сообщения: Ответить с цитатой

Спасибо, Ветер! Получается.
А что дает строка: for (int i=0;i<1000; i++) ?

_________________
Celestron SkyMaster 20x80 (71018)
Вернуться к началу
petrovicch сейчас оффлайн  Посмотреть профиль Отправить личное сообщение [hidden]
Site Admin Deimos
hv
Site Admin

Зарегистрирован: 10.07.2007

Сообщения: 5945
Благодарности: 38



Добавлено: Вс Мар 27, 2016 19:05    Заголовок сообщения: Ответить с цитатой

Выполнить последовательность действий в скобках { ... } за этой строкой 1000 раз.
_________________
Алексей
+37529 5542822

Профи-диванщик с опытом, есть диплом А4 в рамке.
Вернуться к началу
Deimos сейчас оффлайн  Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Site Admin Deimos
hv
Site Admin

Зарегистрирован: 10.07.2007

Сообщения: 5945
Благодарности: 38



Добавлено: Вс Мар 27, 2016 19:10    Заголовок сообщения: Ответить с цитатой

Здесь делается 1000 шагов, по 400 мс на шаг, а потом делается задержка в дополнительных 200 мс.

Чтобы сделать скорость, близкую к нужной, надо в цикле
Код:
for (int i=0;i<1000; i++)
{
delay(200);
digitalWrite(Motor1step, HIGH);
delay(200);
digitalWrite(Motor1step, LOW);
}

заменить задержки:
Код:
for (int i=0;i<1000; i++)
{
delay(176);
digitalWrite(Motor1step, HIGH);
delay(177);
digitalWrite(Motor1step, LOW);
}

Значения разные, так и задумано. Получится оборот за 173,94 секунды.


А ещё я бы удалил последний delay(200) в коде, он вряд ли нужен вообще там.

_________________
Алексей
+37529 5542822

Профи-диванщик с опытом, есть диплом А4 в рамке.
Вернуться к началу
Deimos сейчас оффлайн  Посмотреть профиль Отправить личное сообщение Посетить сайт автора
petrovicch
ЛА

Зарегистрирован: 14.09.2013

Сообщения: 458
Благодарности: 2

Откуда: Беларусь, г.Ивацевичи

Добавлено: Вс Мар 27, 2016 20:07    Заголовок сообщения: Ответить с цитатой

Deimos, сделал по вашему - получился оборот еще быстрее - 2 мин и около 10 секунд.
Буду подбирать экспериментально.


upd: сделал по совету Ветра
Цитата:
for (int i=0;i<1000; i++)
{
digitalWrite(Motor1step, HIGH);
delay(450);
digitalWrite(Motor1step, LOW);
}

Вышел оборот за 2 мин 52,6 сек при нужных 2 мин 53,9 сек. Истина где-то рядом. Smile

_________________
Celestron SkyMaster 20x80 (71018)
Вернуться к началу
petrovicch сейчас оффлайн  Посмотреть профиль Отправить личное сообщение [hidden]
Andrey Prokopovich
ЛА

Зарегистрирован: 29.11.2007

Сообщения: 3070
Благодарности: 27



Добавлено: Вс Мар 27, 2016 20:45    Заголовок сообщения: Ответить с цитатой

Рекомендую пользовать библиотеку AccelStepper для управления ШД.
_________________
©Но что-то, кажется, идет не так...
Вернуться к началу
Andrey Prokopovich сейчас оффлайн  Посмотреть профиль Отправить личное сообщение [hidden] Посетить сайт автора
Site Admin Deimos
hv
Site Admin

Зарегистрирован: 10.07.2007

Сообщения: 5945
Благодарности: 38



Добавлено: Вс Мар 27, 2016 21:19    Заголовок сообщения: Ответить с цитатой

Тьфу, ошибся в знаке
447 попробуйте.

_________________
Алексей
+37529 5542822

Профи-диванщик с опытом, есть диплом А4 в рамке.
Вернуться к началу
Deimos сейчас оффлайн  Посмотреть профиль Отправить личное сообщение Посетить сайт автора
petrovicch
ЛА

Зарегистрирован: 14.09.2013

Сообщения: 458
Благодарности: 2

Откуда: Беларусь, г.Ивацевичи

Добавлено: Вс Мар 27, 2016 21:22    Заголовок сообщения: Ответить с цитатой

Цитата:
Рекомендую пользовать библиотеку AccelStepper для управления ШД.

А что мне это даст? Погуглил, но толком ничего не понял. Нужно с программированием плотнее разбираться. Только нет пока достаточно времени...Sad
Мне ж в принципе нужна одна функция - питание включил и шаговик бесконечно вращается с заданной скоростью.

Сейчас подобрал задержку - delay(453). Получил оборот за 2 мин 53,8 сек при нужных 2 мин 53,9 сек. Надеюсь такая точность, с учетом всех погрешностей достаточна?
Понимаю - съемка покажет. Smile

_________________
Celestron SkyMaster 20x80 (71018)
Вернуться к началу
petrovicch сейчас оффлайн  Посмотреть профиль Отправить личное сообщение [hidden]
Andrey Prokopovich
ЛА

Зарегистрирован: 29.11.2007

Сообщения: 3070
Благодарности: 27



Добавлено: Вс Мар 27, 2016 21:31    Заголовок сообщения: Ответить с цитатой

Ну, если ничего из это не нужно, то не даст ничего )
Цитата:

Supports acceleration and deceleration
Supports multiple simultaneous steppers, with independent concurrent stepping on each stepper
API functions never delay() or block
Supports 2, 3 and 4 wire steppers, plus 3 and 4 wire half steppers.
Supports alternate stepping functions to enable support of AFMotor
Supports stepper drivers such as the Sparkfun EasyDriver (based on 3967 driver chip)
Very slow speeds are supported

_________________
©Но что-то, кажется, идет не так...
Вернуться к началу
Andrey Prokopovich сейчас оффлайн  Посмотреть профиль Отправить личное сообщение [hidden] Посетить сайт автора
Ветер
ЛА

Зарегистрирован: 21.08.2014

Сообщения: 1237
Благодарности: 117



Добавлено: Вс Мар 27, 2016 22:17    Заголовок сообщения: Ответить с цитатой

Можно перейти на функцию delayMicroseconds и подбирать дальше в микросекундах. А для начала через пропорцию вычислить нужное значение.
Вернуться к началу
Ветер сейчас оффлайн  Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Site Admin Deimos
hv
Site Admin

Зарегистрирован: 10.07.2007

Сообщения: 5945
Благодарности: 38



Добавлено: Вс Мар 27, 2016 22:54    Заголовок сообщения: Ответить с цитатой

Только надо учитывать, что у delayMicroseconds есть ограничение интервала сверху, поэтому надо очень аккуратно перебираться на неё.
_________________
Алексей
+37529 5542822

Профи-диванщик с опытом, есть диплом А4 в рамке.
Вернуться к началу
Deimos сейчас оффлайн  Посмотреть профиль Отправить личное сообщение Посетить сайт автора
petrovicch
ЛА

Зарегистрирован: 14.09.2013

Сообщения: 458
Благодарности: 2

Откуда: Беларусь, г.Ивацевичи

Добавлено: Вс Мар 27, 2016 23:13    Заголовок сообщения: Ответить с цитатой

Наверное не проканает эта команда. Вот чего пишут:
Цитата:
delayMicroseconds()
Останавливает выполнение программы на заданное в параметре количество микросекунд (1 000 000 микросекунд в 1 секунде).

В данной версии Ардуино максимальная пауза воспроизводимая корректно — 16383. Возможно это будет изменено в следующих версиях Arduino. Для остановки выполнения программы более чем на несколько тысяч микросекунд рекомендуется использовать функцию delay().

Плучается если мне нужно 453100 мксек - то такой параметр нельзя задать. Или в моем случае нужно писать так?
Цитата:
{
digitalWrite(Motor1step, HIGH);
delay(453);
delayMicroseconds (100);
digitalWrite(Motor1step, LOW);
}

_________________
Celestron SkyMaster 20x80 (71018)
Вернуться к началу
petrovicch сейчас оффлайн  Посмотреть профиль Отправить личное сообщение [hidden]
Ветер
ЛА

Зарегистрирован: 21.08.2014

Сообщения: 1237
Благодарности: 117



Добавлено: Вс Мар 27, 2016 23:14    Заголовок сообщения: Ответить с цитатой

О, действитель, а я и не знал. Леша, когда кнопку "спасибо" будем к форуму приделывать? Давно просил) Дай мне доступ, я сам все сделаю

Да, можно комбинировать
Вернуться к началу
Ветер сейчас оффлайн  Посмотреть профиль Отправить личное сообщение Посетить сайт автора
petrovicch
ЛА

Зарегистрирован: 14.09.2013

Сообщения: 458
Благодарности: 2

Откуда: Беларусь, г.Ивацевичи

Добавлено: Вс Июл 03, 2016 20:36    Заголовок сообщения: Ответить с цитатой

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

_________________
Celestron SkyMaster 20x80 (71018)
Вернуться к началу
petrovicch сейчас оффлайн  Посмотреть профиль Отправить личное сообщение [hidden]
Ветер
ЛА

Зарегистрирован: 21.08.2014

Сообщения: 1237
Благодарности: 117



Добавлено: Вс Июл 03, 2016 23:08    Заголовок сообщения: Ответить с цитатой

Пасту ГОИ с крупными фракциями разогреть, смешать со смазкой, выставить небольшой прижим и крутить несколько часов, периодически поджимая ЧП. На мой взгляд, проблема подклинивания уйдет.
Вернуться к началу
Ветер сейчас оффлайн  Посмотреть профиль Отправить личное сообщение Посетить сайт автора
petrovicch
ЛА

Зарегистрирован: 14.09.2013

Сообщения: 458
Благодарности: 2

Откуда: Беларусь, г.Ивацевичи

Добавлено: Вс Июл 03, 2016 23:23    Заголовок сообщения: Ответить с цитатой

Может позже. Сейчас не могу в сторону редуктора смотреть... Very Happy
_________________
Celestron SkyMaster 20x80 (71018)
Вернуться к началу
petrovicch сейчас оффлайн  Посмотреть профиль Отправить личное сообщение [hidden]
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Форум @ BelAstro.Net -> Оборудование для астрофотографии Часовой пояс: GMT + 3
На страницу Пред.  1, 2
Страница 2 из 2

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы не можете скачивать файлы


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB