Jump to content

Синбад

Members
  • Content Count

    16
  • Joined

  • Last visited

  • Days Won

    5

Синбад last won the day on April 29

Синбад had the most liked content!

Community Reputation

6 Neutral

Personal Information

  • Имя
    Сергей
  • Возраст
    49
  • Город
    Симферополь
  • Принтер
    GIRAFFE

Recent Profile Visitors

54 profile views
  1. @Magg_ot Таким образом вы калибруете не шаги экструдера/мм, а flow. Комплекс, состоящий из калибровки именно движений шагового мотора , характеристик конкретного пластика (его диаметра, овальности), ширины экструзии и т.д. Можно и другим способом: При откалиброванных значениях шагового двигателя, печатается не очень маленький кубик (30х30 или 40х40) в один периметр без заполнения и крышки. Flow=1, ширина экструзии задана вручную, например 0,4, высота слоя небольшая, например 0,1. Измеряется штангелем, или микрометром толщина получившихся стенок. В идеале она равна заданной ширине экструзии. При расхождениях в цифрах, расчёт верного flow по приведённой выше пропорции для шагов/мм двигателя. Получаем правильный flow. Верно для конкретной катушки конкретного пластика.
  2. @KomAndr А эти пункты не для замены пластика во время печати M600 у меня висит на одной из трёх кнопок пользовательских скриптов в Simplify3D, совсем под рукой. Но пользуюсь кнопкой редко, обычно, или просто через постпроцессинг Simplify3D, или хитро через постпроцессинг Simplify3D. Ну и на датчике окончания филамента M600 висит, как у всех, у кого стоит датчик. А те два пункта меню, которые вы углядели, они для заправки пластика перед печатью и для извлечения уже не нужного пластика вне процесса печати. У меня длинючий боуден и лень долго пихать пруток, или тащить его.
  3. Каждому 3D печатнику не хватает возможностей меню своего принтера. Мысли о добавлении своих пунктов в меню посещают всех, кто прошёл стадию "печать калибровочного кубика". В Marlin есть возможность добавить свои пункты (кнопки) с привязанными к ним действиями. (речь идёт о Marlin 2.0, я не знаю корректность работы в прошивках 1.х.х) В файле Configuration_adv.h, ближе к концу, есть блок отвечающий за "пользовательское меню, меню пользователя". //#define CUSTOM_USER_MENUS Для активации нужно раскоментировать этот дефайн и заполнить пять пунктов "своего" меню. #define USER_DESC_1 "название пункта 1" #define USER_GCODE_1 "действие 1(G код)" #define USER_DESC_2 "название пункта 2" #define USER_GCODE_2 "действие 2(G код)" #define USER_DESC_3 "название пункта 3" #define USER_GCODE_3 "действие 3(G код)" #define USER_DESC_4 "название пункта 4" #define USER_GCODE_4 "действие 4(G код)" #define USER_DESC_5 "название пункта 5" #define USER_GCODE_5 "действие 5(G код)" Названия латинскими буквами в кавычках, действие: исполняемый G код, или последовательность G кода в кавычках. Если пять пунктов меню вам не нужно, неиспользуемые пункты достаточно закомментировать. В меню принтера появится новый подпункт, в котором содержатся ваши пользовательские пункты меню. Название этого нового пункта задаётся строкой #define CUSTOM_USER_MENU_TITLE "название" Латинскими буквами, в кавычках. Скорее всего эта информация вам известна и вы активно пользуетесь CUSTOM_USER_MENUS. Но в нём возможно задать всего пять пунктов, часто этого мало. Увеличить количество пунктов пользовательского меню несложно. (рекомендуется сделать резервные копии подвергающихся ковырянию файлов) Нужно добавить строки (пример увеличения CUSTOM_USER_MENUS до десяти пунктов) файл ...\Marlin\Configuration_adv.h #define CUSTOM_USER_MENUS #if ENABLED(CUSTOM_USER_MENUS) #define CUSTOM_USER_MENU_TITLE "Commands" //#define USER_SCRIPT_DONE "M117 User Script Done" //#define USER_SCRIPT_AUDIBLE_FEEDBACK //#define USER_SCRIPT_RETURN // Return to status screen after a script #define USER_DESC_1 "KALIBROVKA STOLA" #define USER_GCODE_1 "G29 P1\nG29 P3" #define USER_DESC_2 "SETKA STOLA" #define USER_GCODE_2 "G29 T" #define USER_DESC_3 "ZAPOMNIT' SETKU1" #define USER_GCODE_3 "G29 S1" #define USER_DESC_4 "PROCHEST' SETKU1" #define USER_GCODE_4 "G29 L1" #define USER_DESC_5 "ZAPOMNIT' SETKU2" #define USER_GCODE_5 "G29 S2" #define USER_DESC_6 "PROCHEST' SETKU2" #define USER_GCODE_6 "G29 L1" #define USER_DESC_7 "VVOD PLASTIK" #define USER_GCODE_7 "G92 E0\nG1 E650 F6000\nG92 E0\nG1 E50 F180\nG92 E0" #define USER_DESC_8 "UBRAT' PLASTIK" #define USER_GCODE_8 "G92 E0\nG1 E-700 F6000\nG92 E0" //#define USER_DESC_9 "9" //#define USER_GCODE_9 "G0" //#define USER_DESC_10 "10" //#define USER_GCODE_10 "G0" #endif Начиная с шестого пункта - добавлено. файл ...\Marlin\src\lcd\menu\menu_custom.cpp #if defined(USER_DESC_1) && defined(USER_GCODE_1) void lcd_user_gcode_1() { _lcd_user_gcode(PSTR(USER_GCODE_1 _DONE_SCRIPT)); } #endif #if defined(USER_DESC_2) && defined(USER_GCODE_2) void lcd_user_gcode_2() { _lcd_user_gcode(PSTR(USER_GCODE_2 _DONE_SCRIPT)); } #endif #if defined(USER_DESC_3) && defined(USER_GCODE_3) void lcd_user_gcode_3() { _lcd_user_gcode(PSTR(USER_GCODE_3 _DONE_SCRIPT)); } #endif #if defined(USER_DESC_4) && defined(USER_GCODE_4) void lcd_user_gcode_4() { _lcd_user_gcode(PSTR(USER_GCODE_4 _DONE_SCRIPT)); } #endif #if defined(USER_DESC_5) && defined(USER_GCODE_5) void lcd_user_gcode_5() { _lcd_user_gcode(PSTR(USER_GCODE_5 _DONE_SCRIPT)); } #endif #if defined(USER_DESC_6) && defined(USER_GCODE_6) void lcd_user_gcode_6() { _lcd_user_gcode(PSTR(USER_GCODE_6 _DONE_SCRIPT)); } #endif #if defined(USER_DESC_7) && defined(USER_GCODE_7) void lcd_user_gcode_7() { _lcd_user_gcode(PSTR(USER_GCODE_7 _DONE_SCRIPT)); } #endif #if defined(USER_DESC_8) && defined(USER_GCODE_8) void lcd_user_gcode_8() { _lcd_user_gcode(PSTR(USER_GCODE_8 _DONE_SCRIPT)); } #endif #if defined(USER_DESC_9) && defined(USER_GCODE_9) void lcd_user_gcode_9() { _lcd_user_gcode(PSTR(USER_GCODE_9 _DONE_SCRIPT)); } #endif #if defined(USER_DESC_10) && defined(USER_GCODE_10) void lcd_user_gcode_10() { _lcd_user_gcode(PSTR(USER_GCODE_10 _DONE_SCRIPT)); } #endif void menu_user() { START_MENU(); MENU_BACK(MSG_MAIN); #if defined(USER_DESC_1) && defined(USER_GCODE_1) MENU_ITEM(function, USER_DESC_1, lcd_user_gcode_1); #endif #if defined(USER_DESC_2) && defined(USER_GCODE_2) MENU_ITEM(function, USER_DESC_2, lcd_user_gcode_2); #endif #if defined(USER_DESC_3) && defined(USER_GCODE_3) MENU_ITEM(function, USER_DESC_3, lcd_user_gcode_3); #endif #if defined(USER_DESC_4) && defined(USER_GCODE_4) MENU_ITEM(function, USER_DESC_4, lcd_user_gcode_4); #endif #if defined(USER_DESC_5) && defined(USER_GCODE_5) MENU_ITEM(function, USER_DESC_5, lcd_user_gcode_5); #endif #if defined(USER_DESC_6) && defined(USER_GCODE_6) MENU_ITEM(function, USER_DESC_6, lcd_user_gcode_6); #endif #if defined(USER_DESC_7) && defined(USER_GCODE_7) MENU_ITEM(function, USER_DESC_7, lcd_user_gcode_7); #endif #if defined(USER_DESC_8) && defined(USER_GCODE_8) MENU_ITEM(function, USER_DESC_8, lcd_user_gcode_8); #endif #if defined(USER_DESC_9) && defined(USER_GCODE_9) MENU_ITEM(function, USER_DESC_9, lcd_user_gcode_9); #endif #if defined(USER_DESC_10) && defined(USER_GCODE_10) MENU_ITEM(function, USER_DESC_10, lcd_user_gcode_10); #endif END_MENU(); } #endif // HAS_LCD_MENU && CUSTOM_USER_MENUS В двух группах, начиная с шестого пункта- добавлено. файл ...\Marlin\src\inc\SanityCheck.h #if ENABLED(CUSTOM_USER_MENUS) #ifdef USER_GCODE_1 constexpr char _chr1 = USER_GCODE_1[strlen(USER_GCODE_1) - 1]; static_assert(_chr1 != '\n' && _chr1 != '\r', "USER_GCODE_1 cannot have a newline at the end. Please remove it."); #endif #ifdef USER_GCODE_2 constexpr char _chr2 = USER_GCODE_2[strlen(USER_GCODE_2) - 1]; static_assert(_chr2 != '\n' && _chr2 != '\r', "USER_GCODE_2 cannot have a newline at the end. Please remove it."); #endif #ifdef USER_GCODE_3 constexpr char _chr3 = USER_GCODE_3[strlen(USER_GCODE_3) - 1]; static_assert(_chr3 != '\n' && _chr3 != '\r', "USER_GCODE_3 cannot have a newline at the end. Please remove it."); #endif #ifdef USER_GCODE_4 constexpr char _chr4 = USER_GCODE_4[strlen(USER_GCODE_4) - 1]; static_assert(_chr4 != '\n' && _chr4 != '\r', "USER_GCODE_4 cannot have a newline at the end. Please remove it."); #endif #ifdef USER_GCODE_5 constexpr char _chr5 = USER_GCODE_5[strlen(USER_GCODE_5) - 1]; static_assert(_chr5 != '\n' && _chr5 != '\r', "USER_GCODE_5 cannot have a newline at the end. Please remove it."); #endif #ifdef USER_GCODE_6 constexpr char _chr6 = USER_GCODE_6[strlen(USER_GCODE_6) - 1]; static_assert(_chr6 != '\n' && _chr6 != '\r', "USER_GCODE_6 cannot have a newline at the end. Please remove it."); #endif #ifdef USER_GCODE_7 constexpr char _chr7 = USER_GCODE_7[strlen(USER_GCODE_7) - 1]; static_assert(_chr7 != '\n' && _chr7 != '\r', "USER_GCODE_7 cannot have a newline at the end. Please remove it."); #endif #ifdef USER_GCODE_8 constexpr char _chr8 = USER_GCODE_8[strlen(USER_GCODE_8) - 1]; static_assert(_chr8 != '\n' && _chr8 != '\r', "USER_GCODE_8 cannot have a newline at the end. Please remove it."); #endif #ifdef USER_GCODE_9 constexpr char _chr9 = USER_GCODE_9[strlen(USER_GCODE_9) - 1]; static_assert(_chr9 != '\n' && _chr9 != '\r', "USER_GCODE_9 cannot have a newline at the end. Please remove it."); #endif #ifdef USER_GCODE_10 constexpr char _chr10 = USER_GCODE_10[strlen(USER_GCODE_10) - 1]; static_assert(_chr10 != '\n' && _chr10 != '\r', "USER_GCODE_10 cannot have a newline at the end. Please remove it."); #endif #endif Начиная с шестого пункта - добавлено. Как сказал уважаемый KomAndr Облегчи себе жизнь!
  4. Синбад

    Плагин Custom Control Editor

    Это здорово! Всегда нехватает кнопок для подачи команд и манипуляций всяких. Появилась мысль о "меню пользователя" в марлине, напишу в теме "прошивки".
  5. Синбад

    Плагин Custom Control Editor

    А если первые три кнопки объединить в одну? M211 S0/nG 28/nG0 X135 Y105 F5000 Кнопок меньше нажимать
  6. Синбад

    Конфликт Simplify3D и Marlin2

    Я уже понял. В прошлой моей марлин2 (от лета 2018) не работал Linear Advance. Изменение коофициента ни на что не влияло.
  7. Синбад

    Конфликт Simplify3D и Marlin2

    @KomAndr Малинка-апельсинка лучше винды? (я без стёба, я не вдавался в подробности) Та и у меня есть управление и наблюдение через интернет, удалённое вкл-выкл освещения, регулирование температуры воздуха, запись видео, авто выключение после остывания экструдера, датчик обрыва филамента, два монитора, один из которых сенсорный. Может ещё чего не помню. Оно всё сделано, работает, так чем это всё хуже Orange Pi Совсем от темы отошли...
  8. Синбад

    Конфликт Simplify3D и Marlin2

    Проблему победил. Вот только что именно помогло, так и не понял. Ковырялся долго и нудно в прошивке. Кроме UBL, остальные способы калибровки работали, кроме Simplify, другие слайсеры не затыкались. С бубном и заклинаниями...
  9. Синбад

    Конфликт Simplify3D и Marlin2

    Я и не собираюсь с вами спорить Согласитесь, у обоих способов есть свои плюсы и минусы, скорее всего при печати с SD карты плюсов больше. Если бы у меня появлялись проблемы, естественно я бы их решал. Печатаю я не быстрее 80-100 мм/сек, замираний не было. Картридер прикрутить не проблема, просто мне удобно да и приятно работать именно так. Изначально-то вопрос совсем в другом (см. в начале темы). Можно побеседовать о плохости дрыгостола и особенно консольной оси Х... Во всём есть плюсы и минусы. Пытаюсь всётаки понять причины конфликта слайсера с прошивкой. Кура и пронтерфейс- работают нормально. Проще, но понять в чём причина лучше.
  10. Синбад

    Конфликт Simplify3D и Marlin2

    Для UBL желательно сохранять сетку в EEPROM, но совсем не обязательно. У меня куча чуть разных поверхностей для печати и работало это так: практически на каждую печать другое зеркало, разогрев стола и экструдера, нажатие одной кнопки (G29 P1\nG29 P3), в стартовом коде G29 A. Без сохранения сетка отрабатывается. " Ну и печатать с компа по USB это не хорошо "- чаще всего да. У меня прекрасно работает потому что длинна экранированного кабеля между материнкой ПК и платой принтера 5 см, находятся они в одном корпусе, нареканий не было. " Лучше через sd карту или прикрутить октопринт. "- SD карта не предусмотрена. Мне показалось, что Виндовс 7 на борту принтера с подключенной видеокамерой, удалённым управлением принтером, самостоятельным выключением всего комплекса при завершении печати и прочими плюшками, не хуже. Так и сделал . Но это всё не по теме... Вернулся на предыдущую прошивку, но понять в чём проблема не смог.
  11. Начну издалека. У меня самодельный дрыгостол с консольной осью Х, симбиотически слитый с ПК в большом жёстком корпусе, ну то такэ.. До недавнего времени на плате был чуть переделанный Marlin 2.0 от июля-августа 2018 (глубокая бетта). Работало нормально. На днях поставил последнюю Marlin bugfix-2.0.x и вылезла проблема. Часто меняю поверхности для печати (зеркало) использую UBL для калибровки стола. Если отслайсить модель и отправить на печать, всё хорошо, но если сначала провести калибровку стола, то Simplify затыкается. от платы принтера команды принимает, сам не передаёт. До реконнекта. Можно конечно сохранять данные автолевинга в EEPROM , перегрузить слайсер, считать данные. но мне это не удобно, да и раньше работало сразу. Может быть у кого-нибудь мысли по этому поводу возникнут?
  12. Для любителей купажа БФ2 + спирт. Снять старое клеевое покрытие со стекла или зеркала очень легко, нужно замочить это стекло в ванночке с водой. Возможно достаточно нескольких часов, но я забываю и достаю через сутки. После этого слой любой толщины менее чем за минуту очень легко снимается любым твёрдым предметом. Использую несколько зеркал, чтобы не тормозить процесс.
×