Logo

Cлучайные товары

Набор светодиодов 5mm, 3мм 5 цветов (LED)
AC-DC 12 В 7A Источник питания

Посмотреть товар в Магазине »

Мы в соц сетях


Подпишись на канал
Мы на facebook

Манипулятор своими руками из фанеры

.Манипулятор своими руками из фанеры

Как вы знаете сделал я самодельный ЧПУ фрезерный станок. Входе обучения работы на нем я делаю различные поделки и механизмы. Нашел в интернете исходные файлы (MeArmV03.svg) для манипулятора и решил вырезать его на ЧПУ станке.

 исходные файлы для манипулятора и решил вырезать его на ЧПУ станке

Я думал что с первого раза у меня ни чего не получиться. Так как это достаточно сложная работа для ЧПУ и очень много мелких деталей.

ЧПУ резал больше часа и вырезал все детали. Провел небольшую доработку с помощью надфиля. Собрал на винтики манипулятор. Кстати в интернете много инструкций, от текстовых до видео по сборке манипулятора.

И Вот что у меня получилось. Достаточно не плохо на мой взгляд.

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

монипулятор на NodeMCU

Код получился не очень красивый но для проверки достаточно.

// определение режима соединения и подключение библиотеки RemoteXY  
#define REMOTEXY_MODE__ESP8266WIFI_LIB_POINT
#include <ESP8266WiFi.h> 

#include <RemoteXY.h> 

// настройки соединения  
#define REMOTEXY_WIFI_SSID "portalpk" 
#define REMOTEXY_WIFI_PASSWORD "" 
#define REMOTEXY_SERVER_PORT 6377 


// конфигурация интерфейса   
#pragma pack(push, 1) 
uint8_t RemoteXY_CONF[] = 
  { 255,4,0,0,0,31,0,6,5,0,
  4,128,48,50,42,9,4,4,0,6,
  12,9,36,2,4,0,85,11,9,37,
  2,4,128,8,4,42,9,4 }; 
   
// структура определяет все переменные вашего интерфейса управления  
struct { 

    // input variable
  int8_t slider_1; // =0..100 положение слайдера 
  int8_t slider_2; // =0..100 положение слайдера 
  int8_t slider_3; // =0..100 положение слайдера 
  int8_t slider_4; // =0..100 положение слайдера 

    // other variable
  uint8_t connect_flag;  // =1 if wire connected, else =0 

} RemoteXY; 
#pragma pack(pop) 


///////////////////////////////////////////// 
//           END RemoteXY include          // 
///////////////////////////////////////////// 
#include <Servo.h> 
#define PIN_SERVO1 D1
#define PIN_SERVO2 D2
#define PIN_SERVO3 D3
#define PIN_SERVO4 D4
Servo servo1;
Servo servo2;
Servo servo3;
Servo servo4;



void setup()  
{ 
  RemoteXY_Init ();  
   
  // TODO you setup code  
  RemoteXY.slider_1 = 50;  
  RemoteXY.slider_2 = 50; 
  RemoteXY.slider_3 = 50; 
  RemoteXY.slider_4 = 50; 
  servo1.attach(PIN_SERVO1);
  servo2.attach(PIN_SERVO2);
  servo3.attach(PIN_SERVO3);
  servo4.attach(PIN_SERVO4);

   
} 

void loop()  
{  
  RemoteXY_Handler (); 
   
   
  // TODO you loop code 
  // используйте структуру RemoteXY для передачи данных 
  int ms = RemoteXY.slider_1*20+500;  
  servo1.writeMicroseconds(ms);  

    int ms2 = RemoteXY.slider_2*10+500;  
  servo2.writeMicroseconds(ms2);  

    int ms3 = RemoteXY.slider_3*10+500;  
  servo3.writeMicroseconds(ms3);  

    int ms4 = RemoteXY.slider_4*10+500;  
  servo4.writeMicroseconds(ms4);  

}

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

Тестирования самодельного манипулятора показал

NodeMCU

руки-манипулятора

Тестирования самодельного манипулятора показал , что все работает но скорее всего не достаточно питания от одного аккумулятора 18650. И происходить перезагрузка NodeMCU.


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

Вернуться в раздел: Проекты на NodeMCU, ESP8266, ESP-01 Дата публикации 13 февраля , 2018

Яндекс.Метрика

Portal-PK (Портал ПК) © 2015 - 2018 MiniYiiCMS Заказать сайт: f-studio.biz
Обратная связь
Вопрос-Ответ