Перейти к содержанию
    

Выбор способа написать программу.

Здравствуйте! 

Прошу совета. 

В качестве увлечения собираю устройство. 

Дошло до написания управляющей программы. Это будет первая работа с микроконтроллером(если с ним)  и программированием. 

Хронология такова - сначала решив, что для этой задачи хватит 8 битных МК и они будут проще в освоении, прочитал одну из известных книг по AVR, но осознал что 8 бит мне не подходит. Тоже самое произошло, изучив литературу по stm32.

Сейчас мне приглянулась среда матлаб/симулинк и возможность написать код в условно автоматическом режиме.

Параллельно с этим я начал листать старые книги по дискретной логике. Может нужно  FPGA учить. 

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

Хочется понимать как там все работает в МК, но тратить кучу времени нет желания. С английским тоже не хочу возиться, может взять какой-нибудь МК отечественный, пусть даже старый, есть ли такие? Еще в этом всем 16-бит мне кажутся неким компромиссом. 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

45 minutes ago, xinortcele said:

Хочется понимать как там все работает в МК, но тратить кучу времени нет желания. С английским тоже не хочу возиться,

Шансов мало.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, xinortcele said:

 приглянулась среда матлаб/симулинк и возможность написать код в условно автоматическом режиме.

Параллельно с этим я начал листать старые книги по дискретной логике. Может нужно  FPGA учить. 

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

У вас есть модель некого шагового двигателя на каком-то языке? Постарайтесь максимально отсимулировать ваш алгоритм до выбора железа. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нет, не работаю.  Arduino - для тех дураков, у кого не хватило терпения освоить столь сложную науку, как программирование и микроконтроллеры. Попробуйте Arduino - может, потянете. Если нет, тогда у вас нет шансов, забейте на это занятие. С таким клипово-картиночным мышлением просто не потянете.

1 час назад, xinortcele сказал:

может взять какой-нибудь МК отечественный, пусть даже старый, есть ли такие?

Нет таких. Миландр, но его цена начинается от 25 тыс.руб и у него класс "военная приемка". Российских микроконтроллеров вообще не существует, это сказки с зомбоящика. Даже Миландры являются клонами, собираемыми по лицензии.

Когда начнете работать с "живыми" шаговыми моторами, вас ждет дофига сколько подводных камней. В частности, остановка на каждом шаге будет вызывать сильные колебания в процессе вращения. Лучше взять готовый драйвер ШД типа TMC2108, он всё делает автоматически (как вы и желаете), нужно только подавать шаговые импульсы. Но скажу по секрету, даже здесь будуд поджидать неожиданности.

1 час назад, xinortcele сказал:

16-бит мне кажутся неким компромиссом

Нисколько! Сложность микроконтроллера напрямую от разрядности его АЛУ не зависит. Тут либо Ардуино-шилды на 8-битных ATMega, либо, для тех, кто более сообразительный, 32-битные STM32 и их аналоги на ARM-ядре. Впрочем, для ШД успешно используют как Ардуину, так и STM32. 

Изменено пользователем EdgeAligned

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 минут назад, _4afc_ сказал:

У вас есть модель некого шагового двигателя на каком-то языке? Постарайтесь максимально отсимулировать ваш алгоритм до выбора железа. 

Есть реальный шаговый двигатель, драйвер, и конструкция где он будет стоять. Его модель в моем понимании не важна (если вы про ускорение) так как каждый импульс это в итоге просто линейное перемещение на 0,005мм.

12 минут назад, EdgeAligned сказал:

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

У вас нет шансов, забейте на это занятие. С таким клипово-картиночным мышлением просто не потянете.

Нет таких. Миландр, но его цена начинается от 25 тыс.руб и у него класс "военная приемка". 

Такая наука прям есть? И так и написано что она сложная? 

У Вас аналоговое мышление? Не трудно Вам с цифровыми схемами? 

Надеюсь Вы просто не прочитали тему. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, xinortcele сказал:

но тратить кучу времени нет желания. С английским тоже не хочу возиться,

Ну как бы вот. "Хочу борща, но не хочу возиться с готовкой. Если скидать всё в кастрюлю - борщ получится?". Ответ - возьмите в магазе замороженный готовый борщ и разогрейте в микроволновке.
То есть, берите Ардуино-шилды, Ардуино-IDE, скачиваете скетчи, копи-пастите всё в кучу и пробуете. Если не заработало - ищите другой скетч и повторяете.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У тех же авр, да и у других есть примеры работы с шаговыми двигателями. Попробуйте изучить и приспособить под свою задачу (которую вы не описали). Кручение одного двигателя можно на любом МК сделать. Пример - 3д принтер. Там atmega328 крутит 4-5 двигателями и выполняет много других задач.

Отечественные МК - это, например, МК51, по ним полно литературы, аналоги используются до сих пор, китайских полно дешёвых с флеш-памятью и разнообразной современной периферией.

1 час назад, xinortcele сказал:

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

Этим обычно блок управления двигателем занимается. МК только даёт команду сделать шаг.

Изменено пользователем vov4ick

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8-битные МК вполне справляются с ШД. Более того, на 8-битных МК есть даже 3D-принтеры с четырьмя ШД. Простенькие и медленные, конечно, но работают.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 минуты назад, vov4ick сказал:

 

Этим обычно блок управления двигателем занимается. МК только даёт команду сделать шаг.

 

Обычно это называют драйвером шагового двигателя. Естественно он тоже есть.

Вообще это вопрос профессионалам задан. Людям с опытом от 25 лет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А 22 года опыта подойдет для управления одним шаговым моторчиком? 🙂 Или этого недостаточно, нужно четверть века потратить, чтобы на ШД несколько импульсов послать?

 

Боюсь, что "люди с опытом от 25 лет" даже и смотреть не будут на вопрос "как написать программу вида - генерирую импульсы для шагового двигателя". 🙂  Я вот еще не достиг планки "25 лет", чето вот отвечаю - дескать, возьмите Ардуино-скетчи, они есть готовые уже. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 минуты назад, EdgeAligned сказал:

А 22 года опыта подойдет для управления одним шаговым моторчиком? 🙂 Или этого недостаточно, нужно четверть века потратить, чтобы на ШД несколько импульсов послать?

 

Если Вы 22 года слали импульсы на шд, сначала на чем-то там, потом на AVR и stm32 и больше ничего не знаете, то нет. Продолжайте писать код руками, ну или копируйте и вставляйте, благо у Вас дожно быть много исходников накопилось.

12 минут назад, EdgeAligned сказал:

А 22 года опыта подойдет для управления одним шаговым моторчиком? 🙂 

Боюсь, что "люди с опытом от 25 лет" даже и смотреть не будут на вопрос "как написать программу вида - генерирую импульсы для шагового двигателя". 🙂  Я вот еще не достиг планки "25 лет", чето вот отвечаю - дескать, возьмите Ардуино-скетчи, они есть готовые уже. 

Это форум позиционируется как форум профессионалов. Тут такие люди есть, и они отвечают. И не кичатся в основном этим. 

То что Вы советуете, может нагуглить школьник. И часто Вы видите что профессионалы советуют ардуино?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Примечательно, что чуть более 6-ти лет назад: 

 

В 23.03.2017 в 03:41, xinortcele сказал:

"придя к выводу что нужно начинать с азов ... я столкнулся с тем что меня хватает примерно на 5 страниц и все! Срабатывает какой-то тормоз"

Спустя 6 лет наконец-то пришли к выводу, что надо бы написать свою первую программу 🙂 Но для этого нужен "людь с опытом от 25 лет". Ну да, если "людь" такой же тормоз, то через 25 лет он конечно сможет написать свою первую прогу для ШД 🙂 

Презабавно, в общем. Да, вы верно определили много лет назад - ну не ваше это. Это индивидуальная особенность, ничего страшного. Ну не расположен человек к таким занятиям. Может, этот чел великий плотник-краснодеревщик, слесарь или спортсмен-легкоатлет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...