Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.07.2014, 00:17   #1
irradiator
Пользователь
 
Регистрация: 03.12.2013
Сообщений: 14
По умолчанию Работа с COM-портом и sleep программы

Нужен совет опытных товарищей !
Пишу программу, которая посылает в COM-порт строку-команду для поворота шагового двигателя (ШД) на N-ное число шагов.
После того, как я отправляю строку-команду в COM-порт жду до тех пор, пока ШД не остановится, затем выполняю остальную часть программы. Возможно ли использовать функцию sleep для того, чтобы точно "выждать" время до полной остановки ШД.
Функция sleep остановит программу, будет ли в этот момент работать ШД ?

P.S. я так понимаю, что скорость считывания строки-команды больше скорости поворота ШД, но не понимаю, повлияет ли останов программы на поворот ШД.
irradiator вне форума Ответить с цитированием
Старый 10.07.2014, 07:39   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Цитата:
Возможно ли использовать функцию sleep для того, чтобы точно "выждать" время до полной остановки ШД.
нет.

Цитата:
Функция sleep остановит программу, будет ли в этот момент работать ШД ?
функция sleep затормозит процессы программы, если ШД управляется напрямую не через дополнительный контроллер, то прекращение сигнала приведет к остановке.

Однако у вас неверный подход. Для отслеживания положения вала двигателя и его статуса всегда используют энкодеры. Это сервоприводу можно точно задать на какой угол повернуться.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 10.07.2014, 12:37   #3
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Из опыта. ШД, очень интересная штучка. ТС не озвучил марку, но разгонт нужно производить, начиная с 500ms (не для всех, бывает и иначе. Подбирается экспериментальн ИМХО). Когда якорь "стартанёт" (мы этого не знаем, но предплагаем), нужно время следования импульсов поделить пополам. Остановка, в обратном порядке.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Завершение программы при выключении ПК (во время sleep-а) MaxOz Общие вопросы Delphi 7 29.02.2012 18:01
Работа функции Sleep delphinewerklin Общие вопросы Delphi 1 17.02.2010 18:30
Работа с com портом Валера777 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 05.12.2009 00:06
Работа с com портом albles Общие вопросы C/C++ 2 16.11.2009 15:15
Работа с COM-портом jovanny Помощь студентам 2 03.05.2009 18:06