Stap 8: Software: aanpassing van de Firmware
In deze tweede stap van het hoofdstuk over software, ik zal het uitleggen van een paar dingen over de firmware op een 3D-printer. De firmware van een 3D-printer is de software die draait op de 3D-printer. De meest gebruikte firmware van de 3D-printer is Marlin. Marlijn is vrije software en kan worden gedownload van GitHub. Om te kunnen openen, aanpassen en upload deze firmware die u zijn zal voor downloaden van de Arduino IDE op uw computer.
Gekocht met de meeste 3D-printers is het mogelijk om te uploaden van nieuwe firmware naar de 3D-printer, maar ik kan het niet aanbevelen. Zonder te krijgen tot de elektronica niet kunt u nieuwe firmware uploaden. Om naar de elektronica van de 3D-printer, zal u waarschijnlijk moeten openstellen van de 3D-printer, wordt de garantie ongeldig. Als u accepteert uw garantie weg te gooien en je slagen in het uploaden van nieuwe firmware, weten ook, dat zal er geen weg terug. Nieuwe firmware uploaden, wordt de vorige firmware definitief verwijderd. Er is geen manier om op te halen van de firmware die momenteel op de elektronica, waardoor dat u kunt niet het maken van een back-up. Bij het uploaden van nieuwe firmware, maken absoluut zeker weet je precies wat je doet.
Bij het bouwen van uw eigen 3D-printer, hebt u voor het configureren van uw eigen firmware van de versie van GitHub. Bij het configureren van, alleen lezen van het tabblad Configuratie van marlijn en volg de instructies er. Zorg ervoor dat u elke afzonderlijke instelling controleren en aanpassen indien nodig.
Er zijn sommige standaard menu's in de Marlin-firmware, maar soms wil je een extra menu, bijvoorbeeld een menu bij huis elke as afzonderlijk. Ik zal nu uitleggen hoe een dergelijke menu moet worden toegevoegd. Het is heel gemakkelijk om dit te doen, maar er zijn een paar verschillende plaatsen moet u iets toe te voegen. Ten eerste, ga naar het bestand ultralcd.ccp. Rond lijn 50 vindt u deze regel: 'statische nietig lcd_main_menu();' samen met enkele andere regels die beginnen met 'static void'. Tussen deze lijnen moet u de regel "statische nietig lcd_home_menu();" toe te voegen. Vervolgens moet u om te vinden de plaats waar dit extra menu zou moeten zijn. Ik plaatste mijn in het menu voorbereiden, net na de verhuizing as menu. Om dit te doen, Zoek eerst het begin van het menu voorbereiden door te zoeken naar de regel 'statische nietige lcd_prepare_menu()' gevolgd door een regel zeggen ' {'. Deze lijnen geven aan het begin van het menu voorbereiden en je vindt ze rond lijn 430. Direct onder deze lijnen zijn er een paar lijnen met menu-items ('MENU_ITEM'). Voeg een regel in de plaats waar u wenst uw extra menu te zeggen 'MENU_ITEM (submenu, MSG_HOME_AXIS, lcd_home_menu);'. MSG_HOME_AXIS is een variabele met tekst, die een tekenreeks wordt genoemd. Het bevat de tekst die zal worden weergegeven op het lcd-scherm als de naam van het menu. U zal deze tekenreeks later verklaren. Eerst bouwen het menu. Om dit te doen, scroll naar beneden een beetje verder totdat u het begin van de beweging as menu, dat wordt aangegeven door 'statische nietige lcd_move_menu_axis()' gevolgd door ' {', rond lijn 575. Dit menu is een echt korte menu, dus als je vond het begin, vond u ook het einde van het menu (aangeduid met 'END_MENU();' gevolgd door '}'). Plaats uw eigen menu na het einde van het menu van de as bewegen. Dit doen door de volgende lijnen toe te voegen:
statische nietige lcd_home_menu() //This is regel geeft het begin van het menu.
{
START_MENU(); Een menu Start.
MENU_ITEM (back, MSG_PREPARE, lcd_prepare_menu); Het toevoegen van een menu-item terug te gaan naar het menu voorbereiden.
MENU_ITEM (gcode, MSG_HOME_X, PSTR ("G28 X")); Het toevoegen van een menu-opdracht om het huis van de x-as.
MENU_ITEM (gcode, MSG_HOME_Y, PSTR ("G28 Y")); Het toevoegen van een menu-opdracht om thuis de y-as.
MENU_ITEM (gcode, MSG_HOME_Z, PSTR ("G28 Z")); Het toevoegen van een menu-opdracht om thuis de z-as.
END_MENU(); Het einde van het menu.
}
In deze lijnen zijn de onderdelen beginnen met MSG tekenreeksen die tekst moet worden weergegeven in het menu. U moet deze variabelen declareren. Om dit te doen, ga naar het bestand 'language.h'. In dit bestand alle tekenreeksen weergegeven op het lcd-scherm worden gedeclareerd en kunnen worden gewijzigd. Wilt declareren dat de vier nieuw gebruikt tekenreeksen, maar vinden de taal die u nu gebruikt en voeg de volgende regels:
#define MSG_HOME_X "Huis X"
#define MSG_HOME_Y "Home-Y"
#define MSG_HOME_Z "Huis Z"
#define MSG_HOME_AXIS "Home assen"
Wijzigen van het deel tussen de "op de tekst u liever of vertalen naar de juiste taal. Nu het uploaden van de nieuwe ingebouwde programmatuur en het menu wordt toegevoegd.
Als u wilt wijzigen van de taal van de menu's in uw 3D-printer, gaat u naar het bestand language.h en wijzigt u het getal na "#define LANGUAGE_CHOICE" rond regel 20 naar het nummer dat overeenkomt met uw taal van keuze. Als de taal van uw voorkeur nog niet wordt weergegeven, kunt u het toevoegen door het kopiëren van de regels van ' #if LANGUAGE_CHOICE == 1' tot de eerste '#endif', plakken aan het einde van het bestand, net voordat ' #endif / / ifndef LANGUAGE_H' en het vertalen van alle onderdelen tussen het ". Vergeet niet te wijzigen het gekopieerde nummer '1' in de eerste gekopieerde regel naar een nummer met is nog niet gebruikt door een andere taal in het language.h bestand. Nederlands heb ik toegevoegd aan mijn language.h-dossier. Als iemand geïnteresseerd is, laat mijn weten en ik zal post-it.
--------------------------------------------------
In deze tweede stap van het hoofdstuk over software zal ik een aantal dingen vertellen over de ingebouwde programmatuur van een 3D-printer. De firmware van een 3D-printer is de software die op de 3D-printer draait. De meest gebruikte 3D-printer firmware is Marlin. Marlijn is vrije software nl kan gedownload worden van GitHub. Om deze firmware te openen, aan te passen nl te uploaden zult u Arduino IDE moeten downloaden op uw computer.
Bij de meeste gekochte 3D printers is het mogelijk nieuwe firmware te uploaden naar de 3D-printer, maar ik raad dit ten zeerste af. Zonder bij de elektronica te komen kunt u geen nieuwe firmware uploaden. Om bij de elektronica van uw 3D-printer te kunnen komen, zult u waarschijnlijk de 3D-printer moeten open schroeven, waardoor u de garantie verliest. U moet wel weten dat als u het verlies van de garantie accepteert nl het lukt u om nieuwe firmware te uploaden er geen weg terug is. Het uploaden van nieuwe firmware verwijdert de vorige firmware nl is er ook geen manier om de huidige firmware van de 3D-printer te downloaden, zodat u een back-up zou kunnen maken. Als u dus nieuwe firmware wilt uploaden, zorg dat u heel zeker bent van wat u aan het doen bent.
Als u zelf een 3D-printer wilt bouwen, zult u zelf de firmware moeten configureren aan uw printer van de versie van GitHub. Als u daar me bezig bent, lees dan goed de instructies in het configuratie bestand van Marlin en volg de instructies daar. Zorg ervoor dat u iedere mogelijke instelling controleert nl goed instelt.
Er zijn een aantal standaard menu is in de Marlin ingebouwde programmatuur, maar het kan zijn dat u het fijn zou vinden een extra menu teen te wapenhandel, bijvoorbeeld een menu wat u de optie geeft om alle assen uit elkaar naar de nul-positie te bewegen. Ik zal nu uitleggen hoe dit menu teen te wapenhandel aan de firmware. Dit is best makkelijk om te doen, maar u zult wel op een aantal verschillende plekken een paar regeltjes teen moeten wapenhandel. Allereerst moet u het ultralcd.ccp bestand openen. Rond regel 50 vind u het volgende commando: 'statische nietig lcd_main_menu();' samen ontmoette een aantal andere commando sterven starten voldaan 'static void'. Voeg tussen sterven commando van het commando 'statische nietig lcd_home_menu();"toe. Vervolgens zult u moeten bepalen waar in de bestaande menu's u uw nieuwe menu wilt plaatsen. Ik heb de mijne in het bereiden menu gezet, direct onder het menu voor de beweging van de assen. Om dit te doen zoekt u het commando op wat de start van het bereiden van menu aangeeft, namelijk 'statische nietige lcd_prepare_menu()' gevolgd deur een regel ontmoette alleen ' {'. U zult dit commando vinden rond regel 430. Direct hieronder vind u een aantal commando sterven starten ontmoette 'MENU_ITEM'. Voeg het volgende commando teen op de plek waar u uw extra menu wilt hebben: 'MENU_ITEM (submenu, MSG_HOME_AXIS, lcd_home_menu);'. MSG_HOME_AXIS is een variabele die tekst bevat. Dit wordt ook wel een tekenreeks genoemd. De waarde van deze tekenreeks is de tekst die op het LCD-scherm van uw 3D-printer weergegeven zal worden als naam van dit menu. Ik zal een stukje verderop uitleggen hoe sterven variabele aan te maken en een waarde te geven. Nu eerst het menu zelf maken. Om dit te doen scrolt u nog wat verder naar beneden tot u het beginnen van het 'move as' menu vindt. Dit is aangegeven voldaan 'statische nietige lcd_move_menu_axis()' gevolgd deur een regel voldaan ' {', rond regel 575. Dit is een hiel kort menu, dus u zult het einde van het menu (aangegeven voldaan 'END_MENU();' gevolgd deur '}') ook direct zien staan. Zet uw eigen menu direct na het einde van dit menu. Doe dit deur de volgende periodekolom teen te wapenhandel:
statische nietige lcd_home_menu() //Dit commando geeft het begin van het menu aan
{
START_MENU(); Een startmenu.
MENU_ITEM (back, MSG_PREPARE, lcd_prepare_menu); Voeg een menu item teen om terug te gaan naar het menu bereiden.
MENU_ITEM (gcode, MSG_HOME_X, PSTR ("G28 X")); Voeg een menu-item om de teen x als naar 0 te bewegen.
MENU_ITEM (gcode, MSG_HOME_Y, PSTR ("G28 Y")); Voeg een menu-item teen om de y als naar 0 te bewegen.
MENU_ITEM (gcode, MSG_HOME_Z, PSTR ("G28 Z")); Voeg een menu-item teen om de z als naar 0 te bewegen.
END_MENU(); Eindig een menu.
}
In deze regels zijn de stukjes ontmoette sterven beginnen MSG weer tekenreeksen die tekst bevatten om in het menu weer te geven. U zult deze variabelen moeten aan maken. Om dit te doen gaat u naar het 'language.h' bestand. In dit bestand staan alle snaren sterven op het LCD-scherm weergegeven kunnen worden benoemd nl kunnen ook hier aangepast worden. Om de vier nieuwe snaren aan te maken, zoek de taal op sterven u gebruikt nl voeg de volgende regels teen:
#define MSG_HOME_X "Huis X"
#define MSG_HOME_Y "Home-Y"
#define MSG_HOME_Z "Huis Z"
#define MSG_HOME_AXIS "Home assen"
Switch de tekst tussen de aanhalingstekens (") naar de tekst die u graag in het menu wilt hebben staan van vertaal het naar de juiste taal. Nu u de nieuwe ingebouwde programmatuur nl het menu uploaden is toegevoegd.
Om de taal van alle menu's van uw 3D-printer aan te passen gaat u naar het language.h bestand nl verleden u het nummer na "#define LANGUAGE_CHOICE" rond regel 20 aan naar het nummer wat overeen komt ontmoette de taal van uw keuze. Als uw favoriete taal nog niet in het lijstje staat, kunt u die zelf toevoegen deur de periodekolommen van ' #if LANGUAGE_CHOICE == 1' tot nl ontmoette de eerste '#endif' te kopiëren nl onderaan, net voor de laatste regel ('#endif / / ifndef LANGUAGE_H'), te plakken. Vertaal vervolgens alle stukjes tussen aanhalingstekens. Vergeet niet het nummer 1 in de eerste, gekopieerde regel aan te passen naar een nummer wat nog niet gebruikt wordt door een andere taal in het language.h bestand. Ik heb aan mijn language.h bestand Nederlands toegevoegd. Als u geïnteresseerd bent in dit bestand, laat het weten en ik zal het uploaden.