Новая китайская поделка 3DTouch - как заставить работать?

komandr
Идет загрузка
Загрузка
17.03.2018
3612
24
Вопросы и ответы
Собственно купил тут злую подделку. :(
При включении питания он радостно дергает щупом два раза и переходит в рабочий режим. Щуп втянут, светодиод горит(правда ни как у всех красным, а синим). Если вручную потянуть за щуп - светик тухнет, а если отпустить он сам возвращается вверх и светик опять горит. По команде М119 передает состояние Open. Если вручную вытянуть щуп и отправить команду - состояние Triggered (замкнуто на землю)

Два дня игрался с настройками Марлин - толку нет. Ну не реагирует ни на команды в меню ни на команды из серии M280 P0 S*.

Определил опытным путем - если раскоментировано #define BLTOUCH, по команде Auto HOME ось Z опускается , но щуп не выдвигается и сопло упрется в стол если вовремя не отключить питание. Если закоментировать //#define BLTOUCH, то после хоминга ось Z ступенчато поднимается вверх, щуп все так же не выдвигается. Думал китаец прислал бракованный зонд. Нашел статейку как проверить зонд. Зонд оказался рабочим. В скетче выполняет все команды правильно.

Перепробовал все возможные варианты с #define Z_SERVO_ANGLES {10,90} Просто не понимаю с какими значениями должен быть этот параметр???
Ответы на вопросы

Ответы

17.03.2018 в 15:41
2

только пару часов как настроил 3d-Touch от Geetech, были нюансы с его выходом в ошибку, но решилось регулировкой верхним винтиком.
Вы в своем случае проверьте какой пин прописан для #define Z_ENDSTOP_SERVO_NR 0  в файле  pins_RAMPS.h (у меня SERVO0_PIN       6)

p.s. MKS gen-l, Marlin 1.1.8

17.03.2018 в 16:39
0

Marlin 1.1.8 
RAMPS 1.5 
#define SERVO0_PIN       11
Коммутация приходит именно на этот пин. Зонд от Greetech подключал ранее и даже статейку тут выкладывал - проблем с ним не было. После того как сгорела Мега и зонд - пришлось зонд заказывать новый, но я купился на более дешевый вариант и вот теперь муки настройки! :( Рабочий конфиг не работает. Делал и настройку заново в вновь скачанной прошивке. Вот такая Ж*ПА.

17.03.2018 в 17:02
0

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

17.03.2018 в 17:56
0

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

17.03.2018 в 18:03
1

Пропишите эти строки. У меня 3Dtouch заработал после них.

#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN // раскомментируем использование в качестве датчика автоуровня гнезда Zmin

/**
* Z Servo Probe, such as an endstop switch on a rotating arm.
*/
#define Z_ENDSTOP_SERVO_NR 0 //в случае использования датчика 3Dtouch (не пленочного!) раскомментируем эту строку, шлейф управления датчиком должен быть подключен к пину servo_0, в случае использования пленочного датчика эта строка должна остаться закомментированной
#define Z_SERVO_ANGLES {10,90} //раскомментируем строку только в случае использования датчика 3Dtouch, т.к. мой датчик имитирует работу сервы, необходимо задать 'углы' поворота для его устойчивой работы, для моей модели это 10 и 90

/**
* The BLTouch probe uses a Hall effect sensor and emulates a servo.
*/
//#define BLTOUCH //BLTOUCH датчик я не ковырял, не знаю
#if ENABLED(BLTOUCH)
//#define BLTOUCH_DELAY 375 // (ms) Enable and increase if needed
#endif

//=============================================================================
//=============================== Extra Features ==============================
//=============================================================================

//эта секция необходима только при использовании серводатчиков уровня, по типу 3Dtouch, как у меня

/**
* Number of servos
*
* For some servo-related options NUM_SERVOS will be set automatically.
* Set this manually if there are extra servos needing manual control.
* Leave undefined or set to 0 to entirely disable the servo subsystem.
*/
#define NUM_SERVOS 1 // Servo index starts with 0 for M280 command //строка подлежит раскомментированию только при использовании серводатчика уровня стола, или же имитирующего его, как мой 3Dtouch, при использовании пленочного датчика уровня в эту секцию вообще не следует лезть

// Delay (in milliseconds) before the next move will start, to give the servo time to reach its target angle.
// 300ms is a good value but you can try less delay.

// If the servo can't reach the requested position, increase it.
#define SERVO_DELAY { 300 } //строка подлежит изменению только при использовании серводатчика уровня стола, или же имитирующего его, как мой 3Dtouch, при использовании пленочного датчика уровня в эту секцию вообще не следует лезть

17.03.2018 в 17:04
0

Не надо раскомментировать Bltouch, можете почитать здесь листинг прошивки, где я как раз 'прикрутил' 3Dtouch.
Он просто должен раскомментироваться, как серво

17.03.2018 в 18:28
0

xolodny я прочитал статью в ссылке вот встречная Anet A 8 - история одного принтера. ч4. Установка 3D Touch и настройка его в Marlin 1.1.8 Я описал как подключать и что настраивать. С зондом от продавца магазина Geeetech у меня проблем не было. При чем при раскоментировании:
#define BLTOUCH
#if ENABLED(BLTOUCH)
  #define BLTOUCH_DELAY 375   // (ms) Enable and increase if needed
#endif
в меню принтера появляется возможность управлять зондом!

У меня с проблемным датчиком другая история, повторю еще раз, когда тестировал его скетчем - он отрабатывает все команды, но в скетче я не разобрался и не понял какие нужно указать углы, в прошивке Марлин, для срабатывания зонда как серво.
Когда подключил новый зонд к принтеру, с рабочей прошивкой от сгоревшего 3DTouch зонда фирмы Geeetech, он вообще ни как не реагирует на команды!

17.03.2018 в 19:12
0

Ну не хотите, как хотите.
Предлагаю еще раз загуглить 3DTouch Auto Leveling Sensor User Manual - в нем ни слова нет про BLtouch. Его работа полностью имитирует работу сервы с концевиком.
Впрочем, если Вам удастся прикрутить его через Bltouch - прошу поделиться информацией. У меня прошивка с раскомментированным BLtouch отказалась компилироваться.

17.03.2018 в 20:25
0

Внимательно читаем первый пост! Там написано, что пробовал и так и так!

17.03.2018 в 20:17
0

тестировал его скетчем
а если методом перебора выяснить какой длины импульсы его 'расшифруют'?

17.03.2018 в 20:28
0

Так не разобрался в коде. Там через монитор порта цифра и выполняется соответствующее действие. Кто может помочь?

17.03.2018 в 21:30
0

Вот кусок кода скетча. 
#include

Servo myservo;                                //define servo variable name
int   servopin=11;                            //define pin for orange signal line (servo pin)
int   endstoppin=12;                          //define pin to emulate endstop;
int   powerpin=13;
int   timeout=500;
int   s_imp=550, b_imp=2400;                  //set max and min impulse
//------------------------------------------------------------------------------------------
void setup()
{
 myservo.attach(servopin, s_imp, b_imp);      //select servo pin
 Serial.begin(9600);                          //connect to serial port, set baud rate at ―9600
 Serial.print('Servo ready on pin ' );
 Serial.println(servopin);
 myservo.write(0);                            //init
 pinMode(endstoppin, INPUT);                  //prepare pin to input
 digitalWrite(powerpin,HIGH);                 //power on for servo
}
//------------------------------------------------------------------------------------------
void loop()
{
  byte  c;
  int   i;
  int   curStatus;                            //current status of endstop
  int   settings[]={700,1500,1800,2200,1200}; //this setting is result read datasheet BLTouch (PWM range):
  char* settingsStr[]={
                       '0-Push pin Down',
                       '1-Push pin Up',
                       '2-Self Test',
                       '3-Alarm Release',
                       '4-M119 Test MOde',
                       '-----------------',
                       'Send any key....'
                      };

18.03.2018 в 01:11
0

Согласно кода из скетча

int settings[]={700,1500,1800,2200,1200};
и найденной таблицы Делаю вывод, что все таки углы должны быть прописаны именно {10,90}
В общем все настройки как и при ранее сгоревшем Geeetech зонде, с этим зондом не работают. Может есть разница между RAMPS 1.4 и RAMPS 1.5 ?
П.С. у меня пока идеи закончились... :(

18.03.2018 в 07:47
1

Недавно пришел такой же датчик с али. У меня он работает как BlTouch и углы как у оригинала (10, 90). Была с ним как у вас проблема, я провода перепутал (sig и zmin), потому-что у него распиновка другая, не как у оригинала, когда переставил провода он заработал как положено. Если нужно, то скину свой конфиг. 

18.03.2018 в 10:50
0

У этого зонда, в корпусе стоит разъем и каждый провод подписан. Подключил согласно подписям. На проверочном скетче зонд работает, на Марлине - молчит.

18.03.2018 в 11:52
0

Вот мой конфиг, если ошибок нет, то 100% дело в подключении.

18.03.2018 в 14:32
0

Вот фото подключения

Черный - минус
Красный +5в
Синий - сигнал
Желтый - Zmin
Так же подключено в принтер.
Такое подключение в скетче проверки зонда - работает зонд.
Такое подключение к RAMPS 1.5 - зонд не работает.
Я так понимаю поступило предложение поменять местами желтый и синий провода?

18.03.2018 в 14:44
0

Честно скажу — с рампсом не сталкивался. Попробуйте желтый провод с синим поменять местами, может действительно в этом дело. В вашей же статье было упоминание про логические уровни сигнала, с ними играть не пробовали? 
Я свой датчик так и не победил, работать он работает, перед печатью по четырем точкам уровень проверяет, а при печати эти настройки игнорирует и печатает в стол, оффсет выставлял. Пока отложил его, думаю напечатать другое крепление и попробовать заново все настроить. 

18.03.2018 в 14:50
0

Вот мой конфиг, если ошибок нет, то 100% дело в подключении.
Сравнил два конфига, слева ваш, справа мой - и вот результат У Вас активирован режим ручного вырвнивания.  Отключена серва полностью. В таком режиме должен работать оригинальный датчик BlTouch и он у Вас.
С таким конфигом никакого автоматического регулирования не будет. Просто вместо концевика Вы используете BlTouch и вручную ровняете стол.

18.03.2018 в 15:05
0

Слева не мой конфиг. Мой справа.

18.03.2018 в 15:25
0

Вот здесь Anet A8 и автокалибровка или ручная калибровка стола. ч1. Миграция на Marlin 1.1.8 и конфигурация для ручного автоуровня я расписал как настроить ручную калибровку стола и что прописать в слайсере для учета неровности стола при печати.

По моей проблеме - менять местами сигнальный и Zmin?

18.03.2018 в 15:27
0


Какой мне смысл обманывать?

Конфиг взят по ссылки с мылооблака!

18.03.2018 в 15:34
0

Я не говорю, что вы обманываете, я говорю, что слева не мой конфиг. Мой конфиг основан на конфиге к марлину 1.1.1 от NickRimmer, поэтому в авторах он написан и еще я только что проверил конфиг, который выложил — он совсем другой. Перекачайте мой конфиг по ссылке выше и сравните мой со своим.

18.03.2018 в 23:18
0

Всем спасибо за внимание, проблема решена.
Как известно - электрика - наука о контактах. Проложенный мною ранее шлейф подключения зонда, сделанный из VGA кабеля, не работал. Скорее всего не хватало сечения проводников.
Подключил провода из комплекта и все заработало.
4-е дня мучений, опытов и тестов...

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

Читайте в блогах

Металлизация напечатанных изделий

Пора организовываться.

Невероятные скидки!

Модуль Выключения питания 220в.

День холостяков в Top 3D Shop 2019

3D сканер для создания 3D фигурок людей Planeta3D D500. Сканируем человека за 1 минуту.