Управление Step\Dir

В данный форуме Вы можете создавать темы посвящённые расширению функционала программы или сайта. После рассмотрения Ваше предложение будет перенесено в соответствующее место
Аватара пользователя
Skull
Лейтенант
Сообщения: 424
Зарегистрирован: 08.09.2015{, 16:18}
Репутация: 4
Откуда: Мариуполь

Управление Step\Dir

#1

Сообщение Skull » 07.05.2016{, 21:06}

Прошу добавить в шаговые моторы управление Step\Dir для готовых контроллеров ШД типа A4988 или подобных.

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

Управление Step\Dir

#2

Сообщение Rovki » 07.05.2016{, 21:14}

Я новичок в ФЛПрог ,как визуально выглядят функциональные блоки ,те или иные и кто их реализует пользователь или Автор ФЛПрог?
Электронщик до мозга костей и не только

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 787
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Управление Step\Dir

#3

Сообщение support » 07.05.2016{, 21:54}

Есть две категории блоков.
1. Основная библиотека блоков - её пишу я. Блоки входящие в неё встроены в код основной программы FLProg.
2. Библиотека блоков пользователей. Эти блоки пишут сами пользователи. Для этого существует специальный интерфейс в программе. Блоки пользователей можно писать на языках FBD, LAD, и для знающих С на нём (точнее не на С а на диалекте Wiring применяющемся в Arduino IDE). Есть возможность выгружать как отдельные блоки так и целые библиотеки в файл и обмениваться ими. В базовой поставкe FLProg библиотека пользовательских блоков пустая, каждый себе заполняет её по своим нуждам. Для обмена блоками существует раздел на сайте.
Автор программы FLProg.

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 787
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Управление Step\Dir

#4

Сообщение support » 07.05.2016{, 21:59}

Визуально блоки выглядят как квадратики с входами и выходами, которые между собой соеденяются линиями (один в один как в среде Овен). А вообще я бы Вам посоветовал бы посмотреть уроки по FLProg.
Изображение
Автор программы FLProg.

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

Управление Step\Dir

#5

Сообщение Rovki » 07.05.2016{, 22:12}

support писал(а):Визуально блоки выглядят как квадратики
Спасибо.Понятно .Может как то перенять опыт ОЛ .Там все самодельные блоки ,оформленные ввиде прямоугольников с заданным количеством входов\выходов называются макросами ,которые сохраняются с определенным расширением и могут вставляться в любой проект .Я их там сделал несколько сотен как универсальные макросы ,так и специализировнные http://www.owen.ru/forum/showthread.php?t=12691.Нет нужды разработчикам писать бесконечное число блоков для пользователей .Это не касается блоков коммуникации и прочих специфических фишек ,которые можно оптимально реализовать только в коде ..
Последний раз редактировалось Rovki 07.05.2016{, 22:31}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 787
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Управление Step\Dir

#6

Сообщение support » 08.05.2016{, 07:40}

Так и в FLProg точно так - же. Только называются они не макросы а блоки пользователей. Любой из них может использоваться любом проекте. Причём поскольку есть возможность писать блок на C,  то возможности этих блоков практически ничем не ограниченны.
Автор программы FLProg.

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

Управление Step\Dir

#7

Сообщение Rovki » 08.05.2016{, 11:28}

Спасибо ,но только не понятно зачем все просят добавить новые ФБ в саму программу (набор элементов) вас ,как Автора .Почему не пользоваться внешними ФБ (макросами), а бесконечно расширять внутренний список ???В чем тут фокус?Нужен ,например блок FIFO ,так сделай сам или попроси кого из форума ...
Последний раз редактировалось Rovki 08.05.2016{, 11:29}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Аватара пользователя
Skull
Лейтенант
Сообщения: 424
Зарегистрирован: 08.09.2015{, 16:18}
Репутация: 4
Откуда: Мариуполь

Управление Step\Dir

#8

Сообщение Skull » 08.05.2016{, 12:57}

Rovki писал(а):В чем тут фокус?
В том, что большинство юзеров ФЛпрога не знает СИ ))

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 787
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Управление Step\Dir

#9

Сообщение support » 08.05.2016{, 12:59}

Не весь функционал можно реализовать с помощью пользовательских блоков на LAD или FBD. Особенно если требуется подключение дополнительных библиотек. Это можно сделать только с помощью блоков на С. А проект рассчитан и предназначен для тех кто не знает языков программирования. У нас на форуме есть некоторое количество пользователей которые могут делать такие блоки. И они очень помогают мне по возможности создавая их. Но их немного, да и время не всегда есть. Ну и к тому же не всегда под рукой есть железяка на которую нужно сделать блок.
Ну и конечно блок интегрированный в программу более хорошо интегрируется в компилятор, и под него есть возможность сделать специфичный интерфейс настройки. Всё таки возможности редактора пользовательских блоков не бесконечны, и ограниченны необходимостью встраивания содержащегося в них кода в результирующий скетчь.
Автор программы FLProg.

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

Управление Step\Dir

#10

Сообщение Rovki » 08.05.2016{, 14:56}

Skull писал(а):В том, что большинство юзеров ФЛпрога не знает СИ ))
Я не имел вообще ввиду СИ .В ОЛ макросы рисуются как обычная схема на FDB.Иногда ,при большом проекте делаешь несколько макросов (блоков) и схема становится читаемой и целиком влазет на рабочее поле .
support писал(а):Не весь функционал можно реализовать с помощью пользовательских блоков на LAD или FBD.
Так и не нужно весь функционал делать на блоках ,для этого ВЫ ЕСТЬ Изображение .
Для примера делал макрос расчета времени восхода и захода солнца и привязки к местности или расчет влажности (психометр) по показаниям двух термометров или макрос ППЗУ -на входе адрес на выходе значение ,которое пользователь сам "зашил",всевозможные макросы стеков (FIFO) итд ,и все на базовых элементах и ФБ и ни какого СИ.Другое дело ,что может ФЛ это не позволяет ,но тут я не спец..
Последний раз редактировалось Rovki 08.05.2016{, 14:59}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Аватара пользователя
support
Супермодератор
Сообщения: 1900
Зарегистрирован: 03.01.2018{, 11:45}
Репутация: 787
Откуда: Астрахань
Имя: Сергей
Контактная информация:

Управление Step\Dir

#11

Сообщение support » 08.05.2016{, 16:59}

Не всё можно сделать на FBD.  Например вопрос данного топика. Вот что нужно реализовать.

Подключить библиотеку AccelStepper:

Код: Выделить всё

#include <AccelStepper.h>
Создать инстанс контроллера двигателя

Код: Выделить всё

AccelStepper Stepper1(1,13,12); //использует пин 12 и 13 для dir и step, 1 - режим "external driver" (A4988)
Создать дополнительные переменные

Код: Выделить всё

int dir = 1; //используется для смены направления
Это была секция Declare

Теперь секция Setup
Инициализация драйвера

Код: Выделить всё

Stepper1.setMaxSpeed(3000); //устанавливаем максимальную скорость вращения ротора двигателя (шагов/секунду)Stepper1.setAcceleration(13000); //устанавливаем ускорение (шагов/секунду^2)
Ну и секция loop

Код: Выделить всё

if(Stepper1.distanceToGo()==0){ //проверка, отработал ли двигатель предыдущее движениеStepper1.move(1600*dir); //устанавливает следующее перемещение на 1600 шагов (если dir равен -1 будет перемещаться -1600 ->
противоположное направление)dir = dir*(-1); //отрицательное значение dir, благодаря чему реализуется вращение в противоположном направленииdelay(1000); //задержка на 1 секунду}Stepper1.run(); //запуск шагового двигателя. Эта строка повторяется вновь и вновь для непрерывного вращения двигателя
 На FBD это не сделаешь, только на С. У меня к сожалению нет ни такого двигателя, ни драйвера, поэтому я не могу сделать такой блок (сделать то могу, а вот проверить ни как).

Ссылка на библиотеку
Автор программы FLProg.

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

Управление Step\Dir

#12

Сообщение Rovki » 08.05.2016{, 17:43}

Как это нельзя на фбд ?? ЩАС сделаем Изображение .Понять бы только что нужно то Изображение .DIR пропустим транзитом мимо блока .Главное сформировать заданную последовательность импульсов (количество -переменная ) и частоту их следования(вторая переменная ) .Микро шаги выбираются на самом драйвере ,опять же если нужно ими управлять ,то пропускаем мимо этого блока ...Если правильно понял задачу ,то ее можно на ФВД сделать Изображение
Последний раз редактировалось Rovki 08.05.2016{, 17:45}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

Управление Step\Dir

#13

Сообщение Rovki » 08.05.2016{, 17:59}

7561658.jpg
Вот вариант ,задаем количество шагов и частоту (период) следования. А также контролируем готовность к приему следующего задания (флаг)
Последний раз редактировалось Rovki 08.05.2016{, 18:28}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

alibek
Рядовой
Сообщения: 90
Зарегистрирован: 14.09.2015{, 12:12}
Репутация: 1
Откуда: Тамбов
Имя: Алибек

Управление Step\Dir

#14

Сообщение alibek » 09.05.2016{, 02:24}

Skull писал(а):Прошу добавить в шаговые моторы управление Step\Dir для готовых контроллеров ШД типа A4988 или подобных.яя
я думал что это ветка станочная Step\Dir для ЧПУ

Добавлено (09.05.2016, 02:24)
---------------------------------------------
хочется средствами Flprog писать свой Софт для самодельных станков ЧПУ

Аватара пользователя
Rovki
Полковник
Сообщения: 4872
Зарегистрирован: 22.04.2016{, 17:25}
Репутация: 269
Откуда: Чехов
Имя: Анатолий
Контактная информация:

Управление Step\Dir

#15

Сообщение Rovki » 09.05.2016{, 07:21}

alibek писал(а):хочется средствами Flprog писать свой Софт для самодельных станков ЧПУ
ЧПУ без энкодеров не пойдет ,хотя есть ШД со встроенными драйверами и энкодерами ,но стоят они не гуманно Изображение .Как то делал на них станок фигурной резки пенопласта .
Последний раз редактировалось Rovki 09.05.2016{, 07:23}, всего редактировалось 1 раз.
Электронщик до мозга костей и не только

alibek
Рядовой
Сообщения: 90
Зарегистрирован: 14.09.2015{, 12:12}
Репутация: 1
Откуда: Тамбов
Имя: Алибек

Управление Step\Dir

#16

Сообщение alibek » 09.05.2016{, 17:21}

Здесь открытый проект
Лазерный гравер на Ардуино
http://www.ecnc.ru/upgrade/etching
прошивка 
http://www.ecnc.ru/flash
Последний раз редактировалось alibek 09.05.2016{, 17:25}, всего редактировалось 1 раз.

alibek
Рядовой
Сообщения: 90
Зарегистрирован: 14.09.2015{, 12:12}
Репутация: 1
Откуда: Тамбов
Имя: Алибек

Управление Step\Dir

#17

Сообщение alibek » 11.05.2016{, 18:57}

support писал(а):У меня к сожалению нет ни такого двигателя, ни драйвера, поэтому я не могу сделать такой блок (сделать то могу, а вот проверить ни как).
отправил с али посылку . поиграйся на досуге
Вложения
4556586.jpg
Последний раз редактировалось alibek 11.05.2016{, 19:00}, всего редактировалось 1 раз.

alibek
Рядовой
Сообщения: 90
Зарегистрирован: 14.09.2015{, 12:12}
Репутация: 1
Откуда: Тамбов
Имя: Алибек

Управление Step\Dir

#18

Сообщение alibek » 11.05.2016{, 19:00}

Вложения
2224287.jpg

alibek
Рядовой
Сообщения: 90
Зарегистрирован: 14.09.2015{, 12:12}
Репутация: 1
Откуда: Тамбов
Имя: Алибек

Управление Step\Dir

#19

Сообщение alibek » 11.05.2016{, 19:01}

Вложения
3914954.jpg

alibek
Рядовой
Сообщения: 90
Зарегистрирован: 14.09.2015{, 12:12}
Репутация: 1
Откуда: Тамбов
Имя: Алибек

Управление Step\Dir

#20

Сообщение alibek » 11.05.2016{, 19:02}

Вложения
4762758.jpg

Ответить

Вернуться в «Новые»