roboforum.ru

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

Электроника RAMPS 1.4

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

Электроника RAMPS 1.4

Сообщение FireFly » 02 мар 2012, 18:00

Решил попробовать поюзать шелд-плату RAMPS 1.4, в качестве "материнки" заюзал ардуино мега 2560.
Прошивку залил Sprinter. Все вроде как хорошо - оси летают, стол греется как положено.
Экструдер не подключал еще и вот из-за чего - транзистор на управлении подогревом стола пашет, при включении сведодиод горит, все пучком, а остальные ключи признаков жизни не подают. Седня весь день пытался это дело победить, но не получилось. Чую засада в прошивке, но обнаружить не могу где это дело поправить.
Итого ХЕЛП!! :D

если у кого есть настоенная прошивка под рампс для прусы, буду благодарен за скетч, очень хочеться понять что там и как.
Домашняя робототехника - RoboZone.SU
горючее...- пиво... много... :)
Аватара пользователя
FireFly
 
Сообщения: 1576
Зарегистрирован: 19 июн 2005, 18:27
Откуда: Камышин

Re: Электроника RAMPS 1.4

Сообщение hudbrog » 02 мар 2012, 18:18

поставь марлин, у меня на нем рампс весь работает вроде =)
У меня в голове опилки и длинные слова меня только огорчают.
Аватара пользователя
hudbrog
 
Сообщения: 1585
Зарегистрирован: 14 май 2008, 15:49
Откуда: Москва
ФИО: Алексей

Re: Электроника RAMPS 1.4

Сообщение FireFly » 02 мар 2012, 18:39

ага, сенкс, чет я эту версию упустил, попробуем
да еще... силовые ключи у всех рампсов так отчаянно греются? не очень понравилось, что места на плате под нормальный радиатор не особо, вентилятор как то спасает положение, но все равно не айс.
Домашняя робототехника - RoboZone.SU
горючее...- пиво... много... :)
Аватара пользователя
FireFly
 
Сообщения: 1576
Зарегистрирован: 19 июн 2005, 18:27
Откуда: Камышин

Re: Электроника RAMPS 1.4

Сообщение setar » 03 мар 2012, 00:16

вообще не греются, на голове примерно 6 Ом , правда стол малость форсировал через укорочение контактов в два раза - пришлось запустить через реле, там порядка 15 А было, они грели ключ

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

Re: Электроника RAMPS 1.4

Сообщение FireFly » 03 мар 2012, 00:48

стол по спецификации не более 11 ампер жрет, провод с техкратным запасом - модельные закупки, там токи ебе... большие короче :D
ничего и ни когда не грелось, а тут кусок текстолита напрягает жутко... сижу думаю
Домашняя робототехника - RoboZone.SU
горючее...- пиво... много... :)
Аватара пользователя
FireFly
 
Сообщения: 1576
Зарегистрирован: 19 июн 2005, 18:27
Откуда: Камышин

Re: Электроника RAMPS 1.4

Сообщение FireFly » 03 мар 2012, 13:00

Серег выложи плиз свой configuration.h для изучения
Домашняя робототехника - RoboZone.SU
горючее...- пиво... много... :)
Аватара пользователя
FireFly
 
Сообщения: 1576
Зарегистрирован: 19 июн 2005, 18:27
Откуда: Камышин

Re: Электроника RAMPS 1.4

Сообщение Aseris » 03 мар 2012, 13:41

У мня кипарисовская плата, там ключи масенькие, - видимо в RAMS изначально транзистор криво выбран, нужен мосфет с очень низким сопротивлением перехода... На плате стоит чтото вроде от On Semiconductor c чифрами на корпусе 20 N6LG, вроде NTD20N06L
Аватара пользователя
Aseris
 
Сообщения: 1142
Зарегистрирован: 01 сен 2009, 14:58
Откуда: Чехия
прог. языки: C/С++, VHDL, Verilog, ASM, Python

Re: Электроника RAMPS 1.4

Сообщение setar » 03 мар 2012, 18:57

лучше изменения выложу, если что не понятно - спрашивай.
у меня из настройки как ни странно самую большую сложность вызвало разобраться с правильностью направлений осей и настройками концевиков, для калибровки динамических характеристик и нормального детектирования режима "срыва" пришлось поставить все 6 шт
Код: Выделить всёРазвернуть
diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h
index 74c03eb..e6fd7d7 100644
--- a/Marlin/Configuration.h
+++ b/Marlin/Configuration.h
@@ -8,12 +8,12 @@
//User specified version info of THIS file to display in [Pronterface, etc] terminal window during startup.
//Implementation of an idea by Prof Braino to inform user that any changes made
//to THIS file by the user have been successfully uploaded into firmware.
-#define STRING_VERSION_CONFIG_H "2012-02-25" //Personal revision number for changes to THIS file.
-#define STRING_CONFIG_H_AUTHOR "erik" //Who made the changes.
+#define STRING_VERSION_CONFIG_H "28/02/2012" //Personal revision number for changes to THIS file.
+#define STRING_CONFIG_H_AUTHOR "Setar" //Who made the changes.

// This determines the communication speed of the printer
-#define BAUDRATE 250000
-//#define BAUDRATE 115200
+//#define BAUDRATE 250000
+#define BAUDRATE 115200

//// The following define selects which electronics board you have. Please choose the one that matches your setup
// Gen7 custom (Alfons3 Version) = 10 "https://github.com/Alfons3/Generation_7_Electronics"
@@ -29,7 +29,7 @@
// Ultimaker = 7
// Teensylu = 8
// Gen3+ =9
-#define MOTHERBOARD 7
+#define MOTHERBOARD 33

//===========================================================================
//=============================Thermal Settings  ============================
@@ -47,10 +47,10 @@
// 6 is EPCOS 100k
// 7 is 100k Honeywell thermistor 135-104LAG-J01

-#define TEMP_SENSOR_0 -1
+#define TEMP_SENSOR_0 1
#define TEMP_SENSOR_1 0
#define TEMP_SENSOR_2 0
-#define TEMP_SENSOR_BED 0
+#define TEMP_SENSOR_BED 4

// Actual temperature must be close to target for this long before M109 returns success
#define TEMP_RESIDENCY_TIME 10 // (seconds)
@@ -84,11 +84,15 @@
   #define K1 0.95 //smoothing factor withing the PID
   #define PID_dT 0.128 //sampling period of the PID

+    #define  DEFAULT_Kp 30
+    #define  DEFAULT_Ki 1.71 
+    #define  DEFAULT_Kd 131.25
+   
// If you are using a preconfigured hotend then you can use one of the value sets by uncommenting it
// Ultimaker
-    #define  DEFAULT_Kp  22.2
-    #define  DEFAULT_Ki (1.25*PID_dT) 
-    #define  DEFAULT_Kd (99/PID_dT) 
+//    #define  DEFAULT_Kp  22.2
+//    #define  DEFAULT_Ki (1.25*PID_dT) 
+//    #define  DEFAULT_Kd (99/PID_dT) 

// Makergear
//    #define  DEFAULT_Kp 7.0
@@ -115,9 +119,9 @@
#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors

// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
-const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
-const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
-const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
+const bool X_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops.
+const bool Y_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops.
+const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops.

// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
#define X_ENABLE_ON 0
@@ -132,7 +136,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th
#define DISABLE_E false // For all extruders

#define INVERT_X_DIR true    // for Mendel set to false, for Orca set to true
-#define INVERT_Y_DIR false    // for Mendel set to true, for Orca set to false
+#define INVERT_Y_DIR true    // for Mendel set to true, for Orca set to false
#define INVERT_Z_DIR true     // for Mendel set to false, for Orca set to true
#define INVERT_E0_DIR false   // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E1_DIR false    // for direct drive extruder v9 set to true, for geared extruder set to false
@@ -141,14 +145,14 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
#define X_HOME_DIR -1
-#define Y_HOME_DIR -1
+#define Y_HOME_DIR 1
#define Z_HOME_DIR -1

#define min_software_endstops true //If true, axis won't move to coordinates less than HOME_POS.
#define max_software_endstops true  //If true, axis won't move to coordinates greater than the defined lengths below.
-#define X_MAX_LENGTH 205
-#define Y_MAX_LENGTH 205
-#define Z_MAX_LENGTH 200
+#define X_MAX_LENGTH 175
+#define Y_MAX_LENGTH 195
+#define Z_MAX_LENGTH 90
// The position of the homing switches. Use MAX_LENGTH * -0.5 if the center should be 0, 0, 0
#define X_HOME_POS 0
@@ -161,9 +165,9 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th

// default settings

-#define DEFAULT_AXIS_STEPS_PER_UNIT   {78.7402,78.7402,200*8/3,760*1.1}                    // default steps per unit for ultimaker
-#define DEFAULT_MAX_FEEDRATE          {500, 500, 5, 45}    // (mm/sec)   
-#define DEFAULT_MAX_ACCELERATION      {9000,9000,100,10000}    // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot
+#define DEFAULT_AXIS_STEPS_PER_UNIT   {64.335,64.6464,200*16/1.25,603}  //579.5                  // steps per unit
+#define DEFAULT_MAX_FEEDRATE          {300, 300, 5, 45}    // (mm/sec)   
+#define DEFAULT_MAX_ACCELERATION      {4000,4000,100,10000}    // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot

#define DEFAULT_ACCELERATION          3000    // X, Y, Z and E max acceleration in mm/s^2 for printing moves
#define DEFAULT_RETRACT_ACCELERATION  3000   // X, Y, Z and E max acceleration in mm/s^2 for r retracts
@@ -182,14 +186,14 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th
// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). 
// M502 - reverts to the default "factory settings".  You still need to store them in EEPROM afterwards if you want to.
//define this to enable eeprom support
-//#define EEPROM_SETTINGS
+#define EEPROM_SETTINGS
//to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out:
// please keep turned on if you can.
-//#define EEPROM_CHITCHAT
+#define EEPROM_CHITCHAT

//LCD and SD support
//#define ULTRA_LCD  //general lcd support, also 16x2
-//#define SDSUPPORT // Enable SD Card Support in Hardware Console
+#define SDSUPPORT // Enable SD Card Support in Hardware Console

//#define ULTIPANEL
#ifdef ULTIPANEL
diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h
index 38e9409..eb793bd 100644
--- a/Marlin/Configuration_adv.h
+++ b/Marlin/Configuration_adv.h
@@ -42,7 +42,7 @@
// you exit the value by any M109 without F*
// Also, if the temperature is set to a value <mintemp, it is not changed by autotemp.
// on an ultimaker, some initial testing worked with M109 S215 T260 F0.1 in the start.gcode
-//#define AUTOTEMP
+#define AUTOTEMP
#ifdef AUTOTEMP
   #define AUTOTEMP_OLDWEIGHT 0.98
#endif
@@ -68,7 +68,7 @@
// This defines the number of extruders
#define EXTRUDERS 1

-#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing
+//#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing
//#define Z_LATE_ENABLE // Enable Z the last moment. Needed if your Z driver overheats.

@@ -76,7 +76,7 @@
#define X_HOME_RETRACT_MM 5
#define Y_HOME_RETRACT_MM 5
#define Z_HOME_RETRACT_MM 1
-//#define QUICK_HOME  //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially.
+#define QUICK_HOME  //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially.

#define AXIS_RELATIVE_MODES {false, false, false, false}

@@ -142,13 +142,13 @@
#endif // ADVANCE

// A debugging feature to compare calculated vs performed steps, to see if steps are lost by the software.
-//#define DEBUG_STEPS
+#define DEBUG_STEPS

// Arc interpretation settings:
#define MM_PER_ARC_SEGMENT 1
#define N_ARC_CORRECTION 25

-const int dropsegments=5; //everything with less than this number of steps will be ignored as move and joined with the next movement
+const int dropsegments= 5; //everything with less than this number of steps will be ignored as move and joined with the next movement

// If you are using a RAMPS board or cheap E-bay purchased boards that do not detect when an SD card is inserted
// You can get round this by connecting a push button or single throw switch to the pin defined as SDCARDCARDDETECT
diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h
index e01d98a..0269576 100644
--- a/Marlin/Marlin.h
+++ b/Marlin/Marlin.h
@@ -62,6 +62,8 @@
//#define MYPGM(s)  (__extension__({static char __c[] __attribute__((__progmem__)) = (s); &__c[0];}))  //This is the normal behaviour
//#define MYPGM(s)  (__extension__({static prog_char __c[]  = (s); &__c[0];})) //this does not work but hides the warnings

+// Macro for getting current active extruder
+#define ACTIVE_EXTRUDER ((int)active_extruder)

#define SERIAL_PROTOCOL(x) MYSERIAL.print(x);
#define SERIAL_PROTOCOLPGM(x) serialprintPGM(MYPGM(x));
diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h
index 3071a6b..5db7cff 100644
--- a/Marlin/thermistortables.h
+++ b/Marlin/thermistortables.h
@@ -132,26 +132,47 @@ const short temptable_3[][2] PROGMEM = {
#endif
#if (THERMISTORHEATER_0 == 4) || (THERMISTORHEATER_1 == 4) || (THERMISTORHEATER_2 == 4) || (THERMISTORBED == 4) //10k thermistor
const short temptable_4[][2] PROGMEM = {
-   {1*OVERSAMPLENR, 430},
-   {54*OVERSAMPLENR, 137},
-   {107*OVERSAMPLENR, 107},
-   {160*OVERSAMPLENR, 91},
-   {213*OVERSAMPLENR, 80},
-   {266*OVERSAMPLENR, 71},
-   {319*OVERSAMPLENR, 64},
-   {372*OVERSAMPLENR, 57},
-   {425*OVERSAMPLENR, 51},
-   {478*OVERSAMPLENR, 46},
-   {531*OVERSAMPLENR, 41},
-   {584*OVERSAMPLENR, 35},
-   {637*OVERSAMPLENR, 30},
-   {690*OVERSAMPLENR, 25},
-   {743*OVERSAMPLENR, 20},
-   {796*OVERSAMPLENR, 14},
-   {849*OVERSAMPLENR, 7},
-   {902*OVERSAMPLENR, 0},
-   {955*OVERSAMPLENR, -11},
-   {1008*OVERSAMPLENR, -35}
+//   {1*OVERSAMPLENR, 430},
+//   {54*OVERSAMPLENR, 137},
+//   {107*OVERSAMPLENR, 107},
+//   {160*OVERSAMPLENR, 91},
+//   {213*OVERSAMPLENR, 80},
+//   {266*OVERSAMPLENR, 71},
+//   {319*OVERSAMPLENR, 64},
+//   {372*OVERSAMPLENR, 57},
+//   {425*OVERSAMPLENR, 51},
+//   {478*OVERSAMPLENR, 46},
+//   {531*OVERSAMPLENR, 41},
+//   {584*OVERSAMPLENR, 35},
+//   {637*OVERSAMPLENR, 30},
+//   {690*OVERSAMPLENR, 25},
+//   {743*OVERSAMPLENR, 20},
+//   {796*OVERSAMPLENR, 14},
+//   {849*OVERSAMPLENR, 7},
+//   {902*OVERSAMPLENR, 0},
+//   {955*OVERSAMPLENR, -11},
+//   {1008*OVERSAMPLENR, -35}
+
+   {1*OVERSAMPLENR, 452},
+   {54*OVERSAMPLENR, 146},
+   {107*OVERSAMPLENR, 118},
+   {160*OVERSAMPLENR, 102},
+   {213*OVERSAMPLENR, 91},
+   {266*OVERSAMPLENR, 82},
+   {319*OVERSAMPLENR, 75},
+   {372*OVERSAMPLENR, 66},
+   {425*OVERSAMPLENR, 62},
+   {478*OVERSAMPLENR, 55},
+   {531*OVERSAMPLENR, 52},
+   {584*OVERSAMPLENR, 46},
+   {637*OVERSAMPLENR, 37},
+   {690*OVERSAMPLENR, 32},
+   {743*OVERSAMPLENR, 27},
+   {796*OVERSAMPLENR, 21},
+   {849*OVERSAMPLENR, 14},
+   {902*OVERSAMPLENR, 7},
+   {955*OVERSAMPLENR, -3},
+   {1008*OVERSAMPLENR, -28}
};
#endif

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

Re: Электроника RAMPS 1.4

Сообщение FireFly » 03 мар 2012, 18:59

усе, разобрался :) все оказалось просто - пока не подключишь термодатчики, нагревательные элементы заблокированы и включить их нельзя, что собстно логично. Хотя в прошивке teacup этой защиты нет, там все включается и выключается без наличия датчиков. Завтра уже буду пробовать печатать :Yahoo!:
Домашняя робототехника - RoboZone.SU
горючее...- пиво... много... :)
Аватара пользователя
FireFly
 
Сообщения: 1576
Зарегистрирован: 19 июн 2005, 18:27
Откуда: Камышин

Re: Электроника RAMPS 1.4

Сообщение FireFly » 03 мар 2012, 23:04

+ - это менял, а - не трогал?
целиком бы файлик скинул, мне так удобнее было бы
Домашняя робототехника - RoboZone.SU
горючее...- пиво... много... :)
Аватара пользователя
FireFly
 
Сообщения: 1576
Зарегистрирован: 19 июн 2005, 18:27
Откуда: Камышин

Re: Электроника RAMPS 1.4

Сообщение Grem » 04 мар 2012, 01:17

- удалилась строка
+ добавилась строка
"There is nothing better than sliding down snow and flying through the air" (с) Shane McConkey.
Lieber ein Brett am Fuß als eins vorm Kopf, aber lieber ein Brett vorm Kopf als zwei am Fuß.
Аватара пользователя
Grem
 
Сообщения: 1530
Зарегистрирован: 16 май 2009, 12:50
Откуда: Россия
прог. языки: Java, C

Re: Электроника RAMPS 1.4

Сообщение setar » 04 мар 2012, 20:35

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

Re: Электроника RAMPS 1.4

Сообщение George164 » 03 ноя 2012, 11:29

Добрый день
Дошли руки доделать свой Ультимэйкер. Пытался спросить на паре форумов, но там эта тема умерла, а у вас вроде бы шевелится. Есть надежда на помощь.
Хочу опробовать работу узлов до установки в принтер. Вопрос как погонять моторы без нагревателя и терморезистора. Что-то Принтран принтер видит ,но ругается на тепературу.
В принтере Рампс 1.4 с залитым Марлином.
George164
 
Сообщения: 35
Зарегистрирован: 03 ноя 2012, 11:13

Re: Электроника RAMPS 1.4

Сообщение dccharacter » 03 ноя 2012, 18:30

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

Re: Электроника RAMPS 1.4

Сообщение setar » 03 ноя 2012, 21:27

тестовой прошивкой, ссылка на нее в теме RAMPS на сайте reprap.org

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

След.

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

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

Сейчас этот форум просматривают: GoGo.Ru [Bot] и гости: 15