roboforum.ru

Технический форум по робототехнике.

Датчик касания дифференциальный ИК

Обсуждение технологии печати на 3D принтерах. Самостоятельное изготовление и приобретение. RepRap и его последователи.

Re: Датчик касания дифференциальный ИК

Сообщение Dmitry__ » 06 окт 2015, 15:49

roboprint писал(а):Ну а теперь по поводу отклонения в 5 раз у автора: вот его ответ сегодня по теме, стол его 300-миллиметровый (мой стол 180 мм), стд. отклонение у него на 13 точках автолевела (распределённых по всему столу) получается 0.08: http://forums.reprap.org/read.php?178,4 ... msg-567146

Вах-вах-вах, какой чудный форум, я прям и не знаю, есть ли смысл дальше обсуждать точность этого датчика :D

dccharacter писал(а):roboprint, ты же говоришь про измеренное отклонение от плоскостности, так? Ну так это совместная ошибка плоскостности стола и датчика. Или все-таки про серию измерений в одной точке?

Зачем ему вдумываться в тесты датчика? Все намана :)

Для остальных:
Т.к. оптодатчик помимо расстояния измеряет немонохромность стола, то тест надо проводить как с механическим датчиком, но попутно после каждого g30 добавлять маркером разных штрихов на бумажном скотче под датчиком, наклееном на стол :D
Если разрешения в 0.01мм команды g30 мало, то могу допилить марлин до выдавания полных данных по g30...
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Датчик касания дифференциальный ИК

Сообщение Пяткин » 06 окт 2015, 16:42

roboprint писал(а):Поверхность стола - стекло, поверх него чёрный матовый oracal 641 и сверху китайский каптон


oracal не будет препятствовать нагреву стекла?
Пяткин
 
Сообщения: 163
Зарегистрирован: 27 ноя 2013, 15:09

Re: Датчик касания дифференциальный ИК

Сообщение Пяткин » 06 окт 2015, 17:58

Так он же сверху на стекле, а нагреватель снизу.

Ну так у oracal-а теплопроводность низкая
Пяткин
 
Сообщения: 163
Зарегистрирован: 27 ноя 2013, 15:09

Re: Датчик касания дифференциальный ИК

Сообщение setar » 06 окт 2015, 22:47

barakuda62 писал(а):Setar, в теме Автоуровень кровати: методы программного выравнивания копался в прошивке, я так понял что консенсус не найден !?

в общем да, в девелоперскую ветку мои коммиты не приняли:
типа да, выравнивание через обратную матрицу более правильный подход, но по сравнению с ручной подгонкой разница в несколько соток и фикс не существенный.
А я на его базе буду делать постепенное выравнивание плоскости (начинаем с одинакового зазора сопла от кровати и через 10 слоев приходим к идеальной плоскости, первые десять слоев разные по толщине)
Аватара пользователя
setar
Site Admin
 
Сообщения: 10989
Зарегистрирован: 04 окт 2004, 12:58
Откуда: St.Petersburg
Skype: taranenko.sergey
ФИО: Сергей Тараненко

Re: Датчик касания дифференциальный ИК

Сообщение Dmitry__ » 07 окт 2015, 06:33

barakuda62, а сколько у тебя размер прошивки накомпилился? А то avr studio 5 отказывается принимать формат "cppproj", а регаться на сайте ради последней студии -лень. Да и под виртуалбоксом это очень все жестко. Скомпилил в линухе, но что-то мне не нравится. У меня получилось:
Код: Выделить всёРазвернуть
Разделы:
Инд Имя           Размер    VMA       LMA       Файл      Вырав
  0 .text         000004a2  00000000  00000000  000000b4  2**1
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  1 .data         00000000  00800060  000004a2  00000556  2**0
                  CONTENTS, ALLOC, LOAD, DATA
  2 .bss          0000003f  00800060  00800060  00000556  2**0
                  ALLOC
  3 .fuse         00000003  00820000  00820000  00000556  2**0
                  CONTENTS, ALLOC, LOAD, DATA
  4 .stab         000013e0  00000000  00000000  0000055c  2**2
                  CONTENTS, READONLY, DEBUGGING
  5 .stabstr      000010ea  00000000  00000000  0000193c  2**0
                  CONTENTS, READONLY, DEBUGGING
  6 .comment      00000011  00000000  00000000  00002a26  2**0
                  CONTENTS, READONLY

Т.е. код получился 1186 байт.
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Датчик касания дифференциальный ИК

Сообщение barakuda62 » 07 окт 2015, 13:54

Dmitry__ писал(а):barakuda62, а сколько у тебя размер прошивки накомпилился? А то avr studio 5 отказывается принимать формат "cppproj", а регаться на сайте ради последней студии -лень. Да и под виртуалбоксом это очень все жестко. Скомпилил в линухе, но что-то мне не нравится. У меня получилось:
Код: Выделить всёРазвернуть
Разделы:
Инд Имя           Размер    VMA       LMA       Файл      Вырав
  0 .text         000004a2  00000000  00000000  000000b4  2**1
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
  1 .data         00000000  00800060  000004a2  00000556  2**0
                  CONTENTS, ALLOC, LOAD, DATA
  2 .bss          0000003f  00800060  00800060  00000556  2**0
                  ALLOC
  3 .fuse         00000003  00820000  00820000  00000556  2**0
                  CONTENTS, ALLOC, LOAD, DATA
  4 .stab         000013e0  00000000  00000000  0000055c  2**2
                  CONTENTS, READONLY, DEBUGGING
  5 .stabstr      000010ea  00000000  00000000  0000193c  2**0
                  CONTENTS, READONLY, DEBUGGING
  6 .comment      00000011  00000000  00000000  00002a26  2**0
                  CONTENTS, READONLY

Т.е. код получился 1186 байт.

В avr studio 5 проект я тоже не смог открыть, пришлось качать 6.2 версию, размер HEX файла 2,84 кб.
прошивал из под cvavr, так как avr studio сам не пользую.
фусе биты для прогера 0xE2, 0xDF, 0xFF
MiniLedSensor.hex


Добавлено спустя 43 минуты 35 секунд:
setar, одна надёжа на тебя, объясни для тех кто в танке, как сконфигурировать марлин.
как поставил этот датчик потерял сон, и покой :(
раскомментил AUTO_BED_LEVELING и началось !, заколебался я уже каретки на место ставить.
в двух словах, даю команду G28, потом G29, и начинает вроде елозить, потом сворачивает каретку уходит за пределы стола.
поясни где я что в коде забил нетуда, стол у меня X=145, Y=150.


Код: Выделить всёРазвернуть
//============================= Bed Auto Leveling ===========================

#define ENABLE_AUTO_BED_LEVELING // это понятно
#define Z_PROBE_REPEATABILITY_TEST  // это тоже понятно, но не доконца  :( , пока не раскомментил на М47 принтер неотвечал.

#ifdef ENABLE_AUTO_BED_LEVELING

// There are 2 different ways to pick the X and Y locations to probe:

//  - "grid" mode
//    Probe every point in a rectangular grid
//    You must specify the rectangle, and the density of sample points
//    This mode is preferred because there are more measurements.
//    It used to be called ACCURATE_BED_LEVELING but "grid" is more descriptive

//  - "3-point" mode
//    Probe 3 arbitrary points on the bed (that aren't colinear)
//    You must specify the X & Y coordinates of all 3 points

// #define AUTO_BED_LEVELING_GRID
  // with AUTO_BED_LEVELING_GRID, the bed is sampled in a
  // AUTO_BED_LEVELING_GRID_POINTSxAUTO_BED_LEVELING_GRID_POINTS grid
  // and least squares solution is calculated
  // Note: this feature occupies 10'206 byte
  #ifdef AUTO_BED_LEVELING_GRID

    // set the rectangle in which to probe
    #define LEFT_PROBE_BED_POSITION 15            тут нифига непонятно, подставил значения по размеру стола, - 10 мм, типа обрисовал квадрат для калибровки ?
    #define RIGHT_PROBE_BED_POSITION 135
    #define BACK_PROBE_BED_POSITION 140
    #define FRONT_PROBE_BED_POSITION 20

     // set the number of grid points per dimension
     // I wouldn't see a reason to go above 3 (=9 probing points on the bed)
   // #define AUTO_BED_LEVELING_GRID_POINTS 2


  #else  // not AUTO_BED_LEVELING_GRID                                  GRID опцию нераскомменчивал, но значения всё равно поставил, тут тоже непонятно.           
    // with no grid, just probe 3 arbitrary points.  A simple cross-product
    // is used to esimate the plane of the print bed

      #define ABL_PROBE_PT_1_X 15
      #define ABL_PROBE_PT_1_Y 140
      #define ABL_PROBE_PT_2_X 15
      #define ABL_PROBE_PT_2_Y 20
      #define ABL_PROBE_PT_3_X 135
      #define ABL_PROBE_PT_3_Y 20



#endif // AUTO_BED_LEVELING_GRID


  // these are the offsets to the probe relative to the extruder tip (Hotend - Probe)
  #define X_PROBE_OFFSET_FROM_EXTRUDER -25
  #define Y_PROBE_OFFSET_FROM_EXTRUDER -29
  #define Z_PROBE_OFFSET_FROM_EXTRUDER -0.80                   //это моя вычисленная поправка установки 0 датчика, она работает.

  #define Z_RAISE_BEFORE_HOMING 4       // (in mm) Raise Z before homing (G28) for Probe Clearance.
                                        // Be sure you have this distance over your Z_MAX_POS in case

  #define XY_TRAVEL_SPEED 8000         // X and Y axis travel speed between probes, in mm/min

  #define Z_RAISE_BEFORE_PROBING 5    //How much the extruder will be raised before traveling to the first probing point.
  #define Z_RAISE_BETWEEN_PROBINGS 3  //How much the extruder will be raised when traveling from between next probing points
Последний раз редактировалось barakuda62 07 окт 2015, 16:38, всего редактировалось 1 раз.
Printer: H-Boot cube aluminium (промежуточный вариант), Firmware: Marlin
Delta all aluminium, Firmware: Marlin
Electronics: Arduino MEGA 2560 + RAMPS 1.4
barakuda62
 
Сообщения: 292
Зарегистрирован: 28 дек 2014, 02:33
Откуда: Рязань
прог. языки: С#, JAVA

Re: Датчик касания дифференциальный ИК

Сообщение dccharacter » 07 окт 2015, 14:37

Код: Выделить всёРазвернуть
      #define ABL_PROBE_PT_1_X 30
      #define ABL_PROBE_PT_1_Y 110
      #define ABL_PROBE_PT_2_X 30
      #define ABL_PROBE_PT_2_Y 30
      #define ABL_PROBE_PT_3_X 105
      #define ABL_PROBE_PT_3_Y 30
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Аватара пользователя
dccharacter
 
Сообщения: 4995
Зарегистрирован: 10 дек 2010, 13:16
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Re: Датчик касания дифференциальный ИК

Сообщение barakuda62 » 07 окт 2015, 14:40

dccharacter писал(а):
Код: Выделить всёРазвернуть
      #define ABL_PROBE_PT_1_X 30
      #define ABL_PROBE_PT_1_Y 110
      #define ABL_PROBE_PT_2_X 30
      #define ABL_PROBE_PT_2_Y 30
      #define ABL_PROBE_PT_3_X 105
      #define ABL_PROBE_PT_3_Y 30

а почему именно такие цифры !?
Printer: H-Boot cube aluminium (промежуточный вариант), Firmware: Marlin
Delta all aluminium, Firmware: Marlin
Electronics: Arduino MEGA 2560 + RAMPS 1.4
barakuda62
 
Сообщения: 292
Зарегистрирован: 28 дек 2014, 02:33
Откуда: Рязань
прог. языки: С#, JAVA

Re: Датчик касания дифференциальный ИК

Сообщение dccharacter » 07 окт 2015, 15:37

Заведомо больше твоих оффсетов датчика. Мне кажется ты пытаешься через оффсеты выгнать каретку за пределы стола, а движение за эндстопами у тебя не запрещено
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.
Аватара пользователя
dccharacter
 
Сообщения: 4995
Зарегистрирован: 10 дек 2010, 13:16
Откуда: Красногорск МО
прог. языки: C, Python, wiring/processing
ФИО: Андрей

Re: Датчик касания дифференциальный ИК

Сообщение barakuda62 » 07 окт 2015, 15:51

dccharacter писал(а):Заведомо больше твоих оффсетов датчика. Мне кажется ты пытаешься через оффсеты выгнать каретку за пределы стола, а движение за эндстопами у тебя не запрещено

До раскоммента AUTO_BED_LEVELING никаких проблем небыло.
Ограничение есть.
Код: Выделить всёРазвернуть
// Travel limits after homing
#define X_MAX_POS 145
#define X_MIN_POS 0
#define Y_MAX_POS 150
#define Y_MIN_POS 0
#define Z_MAX_POS 180
#define Z_MIN_POS 0
Printer: H-Boot cube aluminium (промежуточный вариант), Firmware: Marlin
Delta all aluminium, Firmware: Marlin
Electronics: Arduino MEGA 2560 + RAMPS 1.4
barakuda62
 
Сообщения: 292
Зарегистрирован: 28 дек 2014, 02:33
Откуда: Рязань
прог. языки: С#, JAVA

Re: Датчик касания дифференциальный ИК

Сообщение Dmitry__ » 07 окт 2015, 16:33

barakuda62 писал(а):прошивка

Спасибо, 1027 байт, очень близко, первые строки файла (таблица переходов прерываний) вообще совпадает :) Будем пилить дальше...

barakuda62, ты пока разбираешься с прошивкой, тести выше стола, чтоб было время нажать аварийную кнопку. Когда перестанешь путать педали, тогда переводи тесты на реальный ноль. Меня пару раз спасли пружинки крепления стола :) После чего перестал рисковать и стал тестить в 10см. от стола.
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Датчик касания дифференциальный ИК

Сообщение barakuda62 » 07 окт 2015, 16:43

Dmitry__ писал(а):
barakuda62 писал(а):прошивка

Спасибо, 1027 байт, очень близко, первые строки файла (таблица переходов прерываний) вообще совпадает :) Будем пилить дальше...

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

ЫЫ :lol:, ну я примерно щас так и делаю, тока не всегда успеваю нажать кнопку.
Как чувствовал что будут проблемы, напечатал новые каретки, ставить пока нехочу по понятным причинам.
Старые каретки после второго раза треснули где тока можно, пока склеил дихэтаном, укрепил вплавлением проволоки, жёсткость конечно стала никакая (может от этого и тест неидеальный получился), сижу щас вот в творческом перерыве, хотелось бы основные комменты по прошивке что и куда. :(, больше таких краш тестов каретки не выдержат !
P1010015.JPG

P1010016.JPG
Последний раз редактировалось barakuda62 07 окт 2015, 17:02, всего редактировалось 1 раз.
Printer: H-Boot cube aluminium (промежуточный вариант), Firmware: Marlin
Delta all aluminium, Firmware: Marlin
Electronics: Arduino MEGA 2560 + RAMPS 1.4
barakuda62
 
Сообщения: 292
Зарегистрирован: 28 дек 2014, 02:33
Откуда: Рязань
прог. языки: С#, JAVA

Re: Датчик касания дифференциальный ИК

Сообщение Dmitry__ » 07 окт 2015, 17:02

Кста, если есть lcd, то там есть опция, типа ofset Z, не помню точно как называется. Появляется при компиляции прошивки с автоуровнем. Не помню где, но помню :), что эта опция помогала от врезаний в стол.
А вообще, я не понял автоуровня и отключил ее. А нужные G команды (g29, g30, g31, m48) просто выпилил из автоуровня. Компилятор пару раз ругнулся на отсутствие файлов (vector_3.*), я их подключил вручную, теперь радуюсь жизни без быдлокода автоуровня :)

Добавлено спустя 7 минут 39 секунд:
Т.е. надо пробежаться поиском по всему проекту "#ifdef ENABLE_AUTO_BED_LEVELING" и убрать эту условную компиляцию для нужных G команд, потом будет пара ошибок из-за подкл. файлов (тоже из-за #ifdef)...

Добавлено спустя 1 минуту 26 секунд:
ну а саму "//#define ENABLE_AUTO_BED_LEVELING" в Configuration.h есно закомментировать.
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Re: Датчик касания дифференциальный ИК

Сообщение barakuda62 » 07 окт 2015, 17:05

Dmitry__ писал(а):Кста, если есть lcd, то там есть опция, типа ofset Z, не помню точно как называется. Появляется при компиляции прошивки с автоуровнем. Не помню где, но помню :), что эта опция помогала от врезаний в стол.
А вообще, я не понял автоуровня и отключил ее. А нужные G команды (g29, g30, g31, m48) просто выпилил из автоуровня. Компилятор пару раз ругнулся на отсутствие файлов (vector_3.*), я их подключил вручную, теперь радуюсь жизни без быдлокода автоуровня :)

Добавлено спустя 7 минут 39 секунд:
Т.е. надо пробежаться поиском по всему проекту "#ifdef ENABLE_AUTO_BED_LEVELING" и убрать эту условную компиляцию для нужных G команд, потом будет пара ошибок из-за подкл. файлов (тоже из-за #ifdef)...

Добавлено спустя 1 минуту 26 секунд:
ну а саму "//#define ENABLE_AUTO_BED_LEVELING" в Configuration.h есно закомментировать.

я в стол неврезаюсь !, тут всё намана, я по X Y ухожу за пределы стола !
Printer: H-Boot cube aluminium (промежуточный вариант), Firmware: Marlin
Delta all aluminium, Firmware: Marlin
Electronics: Arduino MEGA 2560 + RAMPS 1.4
barakuda62
 
Сообщения: 292
Зарегистрирован: 28 дек 2014, 02:33
Откуда: Рязань
прог. языки: С#, JAVA

Re: Датчик касания дифференциальный ИК

Сообщение Dmitry__ » 07 окт 2015, 17:10

barakuda62 писал(а):я в стол неврезаюсь !, тут всё намана, я по X Y ухожу за пределы стола !

Хм, так это нормально :) И там ведь мощности маленькие (если ремень прямо на шаговики). Как оно ломает? :shock: Потрещит и остановится. Когда запускается печать, принтер вообще переходит в абсолютную систему координат, после этого можно ездить куда угодно. В репитер хосте в это время координаты становятся краснымм цветом...
Аватара пользователя
Dmitry__
 
Сообщения: 8033
Зарегистрирован: 13 янв 2011, 15:25
Откуда: Санкт-Петербург

Пред.След.

Вернуться в 3D печать

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14