Jump to content
admin

Намоточный станок на Arduino версия 2.0

Recommended Posts

Подскажите пожалуйста, а почему используется валкодер а не кнопки?

И как изменить скетч что бы можно было использовать именно кнопки а не валкодер.

Share this post


Link to post
Share on other sites

Добрый день всем. Вопрос можно ли с последней версией прошивки использовать ШД нема 17? Нужно что то изменять в скейтче? Заранее спасибо.

 

Share this post


Link to post
Share on other sites

Здравствуйте ребят, будет ли работать с Wavgat uno r3? у меня что то никак.. Пробовал прошивки 2.0 и 2.0в, не выводит ничего на экран,только подсветка горит. Пробовал и с и без шилда. Экран у меня qapass 1602a на драйвере HD44780, использую полубитовое соединение, он его вроде должен поддерживать. Не нужно ли на нем задействовать VSS и VDD пины? это вроде как питание модуля... Ардуишку проверял тестовым скетчем на мигание наплатного светодиода, работает..прозвон соединения платы и дисплея ничего не выявил..с ардуинами впервые столкнулся(

30.10.2020 в 22:52, Push-pull сказал:

Добрый день всем. Вопрос можно ли с последней версией прошивки использовать ШД нема 17? Нужно что то изменять в скейтче? Заранее спасибо.

 

ШД вроде любые попрут, у автора стоял нема17 как раз

Share this post


Link to post
Share on other sites

Запускаем новый BLE 5.2-чип BlueNRG-LP от STMicroelectronics

Любая разработка начинается с чтения документации и изучения доступных средств разработки. Данный материал целиком посвящен средствам разработки, включая детальные инструкции по запуску вашего первого приложения на BlueNRG-LP. Описана работа с отладкой STEVAL-IDB011V1, набором инструментов и пакетом ПО позволяющим разработчику быстро войти в курс дела.

Подробнее

25.10.2020 в 20:26, PitHill сказал:

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

Валкодер современнее;)

25.10.2020 в 20:26, PitHill сказал:

И как изменить скетч что бы можно было использовать именно кнопки а не валкодер.

Полностью переписав навигацию по меню.

 

30.10.2020 в 22:52, Push-pull сказал:

Вопрос можно ли с последней версией прошивки использовать ШД нема 17? Нужно что то изменять в скейтче? Заранее спасибо.

 

Можно. Не нужно, если двигатели 200 шагов на оборот.

8 часов назад, krassava71 сказал:

не выводит ничего на экран,только подсветка горит

Внимательно проверяем схему, еще возможно контрастность крутим.

image.thumb.png.ccfc45aaf5327526f2c5b437291c2cf7.png

Share this post


Link to post
Share on other sites

Революция в силовой электронике. Начало

Что привлекает в SiC по сравнению с кремнием, и какие особенности делают компоненты SiC часто используемыми, несмотря на более высокую стоимость в сравнении с кремниевыми высоковольтными устройствами? – Объясняет специалист ведущего разработчика силовых приборов из карбида кремния, компании Infineon.

Подробнее

04.11.2020 в 01:47, TDA сказал:

Валкодер современнее;)

Полностью переписав навигацию по меню.

 

Можно. Не нужно, если двигатели 200 шагов на оборот.

Внимательно проверяем схему, еще возможно контрастность крутим.

image.thumb.png.ccfc45aaf5327526f2c5b437291c2cf7.png

блин, заработало, правда я так и не понял почему. Сначала на дисплей вывелись черные квадраты. Потом снизив контрастность появились сиволы рандомные, типа слетевшей кодировки. Потом после перезагрузки текст меню и прочее. MAGIC/// работаю кстати по старым прошивкам 2.2 и 2.0 , новую компилировать отказался

Внимание: platform.txt из ядра 'Arduino AVR Boards' содержит устаревшие recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{build.path}/{archive_file}" "{object_file}", автоматически преобразовано в recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{archive_file_path}" "{object_file}". Ожидайте обновления ядра.
C:\Users\Evgeny\Downloads\Arduino_winding_machine_2.4b\Arduino_winding_machine_2.4b.ino:56:0: warning: "D4" redefined

 #define D4        16

 ^

In file included from C:\Program Files (x86)\Arduino\hardware\WAV\avr\variants\lgt8fx8p/pins_arduino.h:36:0,

                 from C:\Program Files (x86)\Arduino\hardware\WAV\avr\cores\lgt8f/Arduino.h:225,

                 from sketch\Arduino_winding_machine_2.4b.ino.cpp:1:

C:\Program Files (x86)\Arduino\hardware\WAV\avr\variants\lgt8fx8p/../standard/pins_arduino.h:85:0: note: this is the location of the previous definition

 #define D4 4 /* PD4 */

 ^

C:\Users\Evgeny\Downloads\Arduino_winding_machine_2.4b\Arduino_winding_machine_2.4b.ino:57:0: warning: "D5" redefined

 #define D5        17

 ^

In file included from C:\Program Files (x86)\Arduino\hardware\WAV\avr\variants\lgt8fx8p/pins_arduino.h:36:0,

                 from C:\Program Files (x86)\Arduino\hardware\WAV\avr\cores\lgt8f/Arduino.h:225,

                 from sketch\Arduino_winding_machine_2.4b.ino.cpp:1:

C:\Program Files (x86)\Arduino\hardware\WAV\avr\variants\lgt8fx8p/../standard/pins_arduino.h:86:0: note: this is the location of the previous definition

 #define D5 5 /* PD5 */

 ^

C:\Users\Evgeny\Downloads\Arduino_winding_machine_2.4b\Arduino_winding_machine_2.4b.ino:58:0: warning: "D6" redefined

 #define D6        18

 ^

In file included from C:\Program Files (x86)\Arduino\hardware\WAV\avr\variants\lgt8fx8p/pins_arduino.h:36:0,

                 from C:\Program Files (x86)\Arduino\hardware\WAV\avr\cores\lgt8f/Arduino.h:225,

                 from sketch\Arduino_winding_machine_2.4b.ino.cpp:1:

C:\Program Files (x86)\Arduino\hardware\WAV\avr\variants\lgt8fx8p/../standard/pins_arduino.h:87:0: note: this is the location of the previous definition

 #define D6 6 /* PD6 */

 ^

C:\Users\Evgeny\Downloads\Arduino_winding_machine_2.4b\Arduino_winding_machine_2.4b.ino:59:0: warning: "D7" redefined

 #define D7        19

 ^

In file included from C:\Program Files (x86)\Arduino\hardware\WAV\avr\variants\lgt8fx8p/pins_arduino.h:36:0,

                 from C:\Program Files (x86)\Arduino\hardware\WAV\avr\cores\lgt8f/Arduino.h:225,

                 from sketch\Arduino_winding_machine_2.4b.ino.cpp:1:

C:\Program Files (x86)\Arduino\hardware\WAV\avr\variants\lgt8fx8p/../standard/pins_arduino.h:88:0: note: this is the location of the previous definition

 #define D7 7 /* PD7 */

 ^

In file included from C:\Users\Evgeny\Documents\Arduino\libraries\AccelStepper-1.61.0\src\AccelStepper.cpp:6:0:

C:\Users\Evgeny\Documents\Arduino\libraries\AccelStepper-1.61.0\src\AccelStepper.cpp: In member function 'void AccelStepper::runToPosition()':

C:\Users\Evgeny\Documents\Arduino\libraries\AccelStepper-1.61.0\src\AccelStepper.h:274:22: error: 'yield' was not declared in this scope

  #define YIELD yield();

                      ^

C:\Users\Evgeny\Documents\Arduino\libraries\AccelStepper-1.61.0\src\AccelStepper.cpp:616:2: note: in expansion of macro 'YIELD'

  YIELD; // Let system housekeeping occur

  ^

exit status 1
Ошибка компиляции для платы WAVGAT UNO R3.
 

Share this post


Link to post
Share on other sites

Материалы вебинара Практическое использование TrustZone в STM32L5

Материалы вебинара, посвященного экосистеме безопасности и возможностях, которые дает новая технология TrustZone в МК STM32L5, содержат две подробные практические работы: создание простого приложения с изоляцией в TrustZone, и пример отладки и тестирования TFM-SBSFU. Программа рассчитана на технических специалистов и тех, кто уже знаком с основами защиты ПО в STM32.

Подробнее

7 часов назад, krassava71 сказал:

новую компилировать отказался

А библиотека accelstepper стоит? Это  было рассказано в том посте где я выложил 2.4, посмотрите его внимательнее. 

Share this post


Link to post
Share on other sites

Может кто подскажет. Купил Энкодер в месном радиомагазине HW-040 он отказывается работать от слова совсем, даже со схемой антидребезга. При повороте рандомно заходит по всему меню. Может у кого был такой?

Share this post


Link to post
Share on other sites
14 часов назад, TDA сказал:

А библиотека accelstepper стоит? Это  было рассказано в том посте где я выложил 2.4, посмотрите его внимательнее. 

да, на ее отсутствие он ругнулся сначала, я ее скачал и подключил, теперь выдает ошибку как я выше написал.. библиотеки все обновлены. Буду разбираться, пока механикой занимаюсь

Share this post


Link to post
Share on other sites

а есть инструкция видио или описание где что выставляется ? подскажите пожалуйста ! 

Edited by Алекс Пр

Share this post


Link to post
Share on other sites
06.11.2020 в 22:37, Push-pull сказал:

//////////////////////

Вопрос про энкодер снят,разобрался.

Проект еще не закрыт? Хотелось бы поставить русскоязычное меню.

Edited by Falconist
Оверквотинг

Share this post


Link to post
Share on other sites

если шпильки на укладчик покупные (леруа.хоз.маг и т. д ) на них шаг 1.25 вот и будут витки путаться 

10.11.2020 в 14:56, Алекс Пр сказал:

а есть инструкция видио или описание где что выставляется ? подскажите пожалуйста ! 

вроде разобрался кроме одного ( STPMUL) что это 

Share this post


Link to post
Share on other sites

2.2b набегает к концу намотки 1.5-2 витка (115 витков шаг 0.29) по факту 117 укладчик убрал укладываю в ручную так получше как сделать чтоб просто крутило и считало правильно?

Share this post


Link to post
Share on other sites
14 часов назад, Алекс Пр сказал:

2.2b набегает к концу намотки 1.5-2 витка (115 витков шаг 0.29) по факту 117 укладчик убрал укладываю в ручную так получше как сделать чтоб просто крутило и считало правильно?

Народ, лень прочитать от начала? Там есть все ответы на ваши проблемы

 

Share this post


Link to post
Share on other sites
1 час назад, Balent сказал:

Народ, лень прочитать от начала? Там есть все ответы на ваши проблемы

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

Share this post


Link to post
Share on other sites
12.12.2020 в 13:41, Алекс Пр сказал:

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

С 7 ветки почитай, была поднята эта проблема. Ничего нового не появилось. Я себе оставил схему с укладчиком отдельно и подсчет витков  на датчике с LED индикацией отдельно, пользуюсь и нет проблем, Надо, скорость поменял, направление. Мне устраивает. Витки фиксируются четко.

Share this post


Link to post
Share on other sites

Что полезного появится в следующей версии 2.4? Что мне нравится в этой версии – кнопку нажал и мотай столько, сколько нужно. И ещё можно вращать намоточную катушку и двигать укладчик в нужное положение. 

Почему-то у меня путем подбора резистор на кнопке sw5 вместо 5,2 кОм нужно 430 Ом.

Хотелось бы попробовать полную версию Rev 2.4b.

Share this post


Link to post
Share on other sites
Guest May

День добрый. Есть вопрос. По окончанию слоя станок останавливается и просит нажать continue. После этого приходит в движение и мотает следующий слой. Какую строчку подправить чтобы он не останавливался, кроме как по нажатию на pause?

TIMSK1=0;
      
      sprintf(Str_Buffer, "%03d", Actual_Turn); 
      lcd.setCursor(1, 0); 
      lcd.print(Str_Buffer);
      
      Actual_Layer++;
      lcd.setCursor(10, 0); 
      sprintf(Str_Buffer, "%02d", Actual_Layer);
      lcd.print(Str_Buffer);
      
      if (Actual_Layer == Set_Layers) continue; 
      
      lcd.setCursor(0, 1); 
      sprintf(Str_Buffer, "PRESS CONTINUE  ");                            // "PRESS CONTINUE  "
      lcd.print(Str_Buffer);
      
      Push_Button = false;
      while(!Push_Button){}
      Push_Button = false; 
      
      lcd.setCursor(0, 1);
      sprintf(Str_Buffer, Menu[15].format, Set_Speed, Set_Step*ShaftStep);
      lcd.print(Str_Buffer);
      
      if (Steppers_Dir == 1) Steppers_Dir = -1;
      else Steppers_Dir = 1; 
      if (Steppers_Dir == 1) PORTB &= 0b11011111; 
      else if (Steppers_Dir == -1) PORTB |= 0b00100000;
      Actual_Turn = 0;        
      sprintf(Str_Buffer, "%03d", Actual_Turn); 
      lcd.setCursor(1, 0); 
      lcd.print(Str_Buffer);
      TIMSK1=2;        
     }
     Здесь ли нужная строка?

Share this post


Link to post
Share on other sites

Наконец то свершилось то, о чем я писал еще летом! Мне написали прошивку для управления намоточным станком. Индикатор будет такой же. Управление энкодером, остались кнопки вращения моторами. Контроллер Атмега8. Есть ручной и автоматический режимы. Есть режим остановки после намотки ряда. Двигатель укладчика перемещает его постоянно. Установка витков, да и всего остального поразрядное, не надо крутить энкодер до одури. Есть кнопка аварийной остановки. В протеусе это хозяйство замечательно работает. Буду разводить плату и проверять все в железе. Вот несколько принскринов экрана с меню и в процессе работы.

 

2.JPG

3.JPG

1.JPG

Share this post


Link to post
Share on other sites

Развел и отфрезеровал платку. В последнее время лень травить, или фрезерую, или в Китае заказываю.

Надо кое чего докупить, и можно паять.

 

IMG_6719.JPG

Share this post


Link to post
Share on other sites

Блок управления готов, и сегодня прошел испытания. Все замечательно работает! Надо попробовать еще модифицированную прошивку, и напечатать корпус. Ну и намотать катушки, ради которых и делался этот станок.:)

IMG_6750.jpg

Share this post


Link to post
Share on other sites

Дабы не засорять эту тему другой конструкцией можете посмотреть все что сделано тут

Прошика, исходники, печатная плата, детали станка для печати.

Share this post


Link to post
Share on other sites

Доброго времени суток! Собрал станочная Меге 2560.  Без  плат расширения. Просто дисплей 2004 повесил несвободные цифровые. Благо их больше полусотни. Не реагирует на энкодер. Видим только стартовую надпись. В чем может быть дело ?? Прерывания на тех же 2 и 3 ногах. Должно оно работать на меге без изменения кода???

Share this post


Link to post
Share on other sites
Guest Вадим

Та же самая проблема, на Arduino UNO (и на Nano тоже) не работает энкодер, если использовать прерывание для кнопки и энкодера одновременно. Если взять пример где 2 и 3 пин используются только для энкодера то все отлично работает. Вот пример где все отлично работает:

int pinA = 2; // Пины прерываний
int pinB = 3; // Пины прерываний

volatile long pause    = 50;  // Пауза для борьбы с дребезгом
volatile long lastTurn = 0;   // Переменная для хранения времени последнего изменения

volatile int count = 0;       // Счетчик оборотов
int actualcount    = 0;       // Временная переменная определяющая изменение основного счетчика

volatile int state = 0;       // Статус одного шага - от 0 до 4 в одну сторону, от 0 до -4 - в другую

volatile int pinAValue = 0;   // Переменные хранящие состояние пина, для экономии времени
volatile int pinBValue = 0;   // Переменные хранящие состояние пина, для экономии времени


void setup()
{
  pinMode(pinA, INPUT);           // Пины в режим приема INPUT
  pinMode(pinB, INPUT);           // Пины в режим приема INPUT

  attachInterrupt(0, A, CHANGE);  // Настраиваем обработчик прерываний по изменению сигнала
  attachInterrupt(1, B, CHANGE);  // Настраиваем обработчик прерываний по изменению сигнала

  Serial.begin(9600);             // Включаем Serial
}

void loop()
{
  if (actualcount != count) {     // Чтобы не загружать ненужным выводом в Serial, выводим состояние
    actualcount = count;          // счетчика только в момент изменения
    Serial.println(actualcount);
  }
}

void A()
{
  if (micros() - lastTurn < pause) return;  // Если с момента последнего изменения состояния не прошло
  // достаточно времени - выходим из прерывания
  pinAValue = digitalRead(pinA);            // Получаем состояние пинов A и B
  pinBValue = digitalRead(pinB);

  cli();    // Запрещаем обработку прерываний, чтобы не отвлекаться
  if (state == 0  && !pinAValue &&  pinBValue || state == 2  && pinAValue && !pinBValue) {
    state += 1; // Если выполняется условие, наращиваем переменную state
    lastTurn = micros();
  }
  if (state == -1 && !pinAValue && !pinBValue || state == -3 && pinAValue &&  pinBValue) {
    state -= 1; // Если выполняется условие, наращиваем в минус переменную state
    lastTurn = micros();
  }
  setCount(state); // Проверяем не было ли полного шага из 4 изменений сигналов (2 импульсов)
  sei(); // Разрешаем обработку прерываний

  if (pinAValue && pinBValue && state != 0) state = 0; // Если что-то пошло не так, возвращаем статус в исходное состояние
}
void B()
{
  if (micros() - lastTurn < pause) return;
  pinAValue = digitalRead(pinA);
  pinBValue = digitalRead(pinB);

  cli();
  if (state == 1 && !pinAValue && !pinBValue || state == 3 && pinAValue && pinBValue) {
    state += 1; // Если выполняется условие, наращиваем переменную state
    lastTurn = micros();
  }
  if (state == 0 && pinAValue && !pinBValue || state == -2 && !pinAValue && pinBValue) {
    state -= 1; // Если выполняется условие, наращиваем в минус переменную state
    lastTurn = micros();
  }
  setCount(state); // Проверяем не было ли полного шага из 4 изменений сигналов (2 импульсов)
  sei();

  if (pinAValue && pinBValue && state != 0) state = 0; // Если что-то пошло не так, возвращаем статус в исходное состояние
}

void setCount(int state) {          // Устанавливаем значение счетчика
  if (state == 4 || state == -4) {  // Если переменная state приняла заданное значение приращения
    count += (int)(state / 4);      // Увеличиваем/уменьшаем счетчик
    lastTurn = micros();            // Запоминаем последнее изменение
  }
}

Экодер уже с обвязкой: https://hobbyprojectshome.files.wordpress.com/2019/04/encoder.png Не могу понять в чем причина.

Share this post


Link to post
Share on other sites

Доброго времени. Подскажите была ли у кого проблема с  тем что энкодер крутит только на увеличение значения? т.е. в одну сторону? Энкодер вот такой:

encoder.png

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Сообщения

    • Прогар убирай,все верно. Непредсказуемые последствия 101% точно. Ну и секс с паяльником по закону подлости как только установишь это в авто
    • Жив еще курилка Тембр то? Это хорошо. Попробуйте тут ознакомиться http://rt22.ru/viewtopic.php?f=14&t=30195 https://rt20.getbb.ru/viewtopic.php?f=5&t=18401&start=50&st=0&sk=t&sd=a Может что отыщется. Навскидку сложно сказать,слишком много времени прошло с последнего Тембра  
    • можно гораздо проще. Если вспомните, что электрон - сам заряженная частица, и ничего никуда им "вдавливать" не нужно. Избыток электронов в каком-то физическом теле - отрицательный заряд. Недостаток электронов - положительный заряд. Для создания луча из электронов давным-давно придумали электронную пушку. Такая была в практически в каждой квартире - в каждой электронно-лучевой трубке (ЭЛТ) в телевизорах. Только вам понадобится ещё и вакуумная камера. В воздухе электроны далеко не летают. Благодарить не надо, пожалуйста развлекайтесь.
    • Родную память 25L1606E. Стер и перепрошил прошивкой скачанной  с другого сайта.
    • А что, HALосоздатели не предоставляют документацию по своим разработкам ? Что-то с трудом верится ...
    • Да супер мощность не нужна он выступает в роли усилителя для двух колонок, я на али нашел пары вариантов плат и макетных плат. Посоветуйте усилитель класса D супер мощный не нужно главное качественный но бюджетный посмотрев канал v-mire-net мне понравился UPC2581V хороший но греется радиатор нужен добротный, поэтому задумался о d классе.
    • Какой чертеж совпадает? Первый или второй?
×
×
  • Create New...