Inhoudsopgave:

De PrintBot: 6 stappen (met afbeeldingen)
De PrintBot: 6 stappen (met afbeeldingen)

Video: De PrintBot: 6 stappen (met afbeeldingen)

Video: De PrintBot: 6 stappen (met afbeeldingen)
Video: Equipment Corner - Gcodes and Slic3r basics 2024, Juli-
Anonim
De PrintBot
De PrintBot
De PrintBot
De PrintBot

De PrintBot is een iRobotCreate-gemonteerde dot-matrixprinter. De PrintBot print met talkpoeder op elk grondoppervlak. Door de robot voor de basis te gebruiken, kan de robot een vrijwel onbeperkte grootte afdrukken. Denk aan voetbalvelden of basketbalvelden. Misschien moeten de rivalen volgend jaar uitkijken naar een zwerm van deze Thanksgiving-weekenden. de robot maakt ook mobiliteit van de printer mogelijk, waardoor deze naar een locatie kan reizen om af te drukken en vervolgens naar een andere te gaan. Draadloos is inbegrepen, dus bediening op afstand is ook mogelijk. Stoepkunst en reclame is ook een doelgroep voor dit apparaat.

Stap 1: IRobot Create

IRobot maken
IRobot maken
IRobot maken
IRobot maken

De iRobot Create lijkt erg op de Roomba van iRobot, maar dan zonder het interne vacuüm. Hierdoor kunnen we een groter laadvermogen toevoegen en hebben we handige montagegaten. iRobot biedt ook een complete programmeerinterface voor de Create die het besturen van de robot heel eenvoudig maakt. De interface is een eenvoudige set commando's en parameters die serieel naar de robot wordt gestuurd. Lees de specificaties van de Open Interface voor meer info. Voor ons eenvoudige gebruik hadden we maar een paar commando's nodig. Na initialisatie moet het 128-commando worden verzonden om de robot te vertellen dat hij externe besturing moet accepteren. Vervolgens moet een modus worden geselecteerd. Voor volledige controle sturen we de opdracht 132 naar de Create. Merk op dat u alle gegevens naar de Create moet sturen als gehele getallen, niet als gewone ascii-tekst. Elke opdracht opcode is één byte, de waarde van die byte is de integerwaarde 128 of wat dan ook. Als u in ascii- of ansi-tekst zou verzenden, zou elk teken in 128 een byte zijn. Voor testen of controle via pc raden we Realterm aan omdat het alles heel eenvoudig maakt. U moet ook de Baudrate instellen op 57600 zoals vermeld in de Open Interface-documentatie. Nu de Create is geïnitialiseerd, gebruiken we de opdracht 137 om de robot vooruit te drijven. Wachtafstand, 156 wordt gebruikt om de robot te stoppen na een bepaalde afstand. De scriptopdrachten 152 en 153 voegen alles samen en vormen een eenvoudig script dat steeds opnieuw kan worden uitgevoerd. iRobot verkoopt wat zij de Command Module noemen, in feite een programmeerbare microcontroller en een paar seriële poorten die u kunt gebruiken om uw Create te besturen. In plaats daarvan gebruikten we een Cypress Programmable System-on-a-Chip (PSoC) in combinatie met een zeer kleine x86-pc, de eBox 2300. De robot heeft een 18V-batterij die we zullen gebruiken om al onze randapparatuur van stroom te voorzien.

Stap 2: Demontage van de printer en motorbesturing

Demontage van de printer en motorbesturing
Demontage van de printer en motorbesturing
Demontage van de printer en motorbesturing
Demontage van de printer en motorbesturing
Demontage van de printer en motorbesturing
Demontage van de printer en motorbesturing

We gebruikten een oude Epson-inkjetprinter voor de horizontale beweging van de printer en de printkopmontage. Het eerste wat je hier moest doen, was de printer voorzichtig demonteren. Hiervoor moesten alle niet-essentiële onderdelen worden verwijderd totdat alleen de rupsband, de motor, de printkophouder en de aandrijfriem over waren. Pas op dat u deze riem of de aandrijfmotor niet breekt. Het kan ook een hak zijn om met een voltmeter rond te snuffelen voordat je alle powerboards eruit scheurt, maar daar waren we een beetje te enthousiast voor. Merk op dat u de pagina-invoereenheid, de eigenlijke printkoppen of cartridges of printplaten niet nodig hebt. Nadat alles is gedemonteerd, moeten we uitzoeken hoe deze motor moet worden aangedreven. Omdat we alles uit elkaar hebben gehaald voordat we iets testten, moesten we de juiste spanning vinden om de motor te voeden. U kunt proberen de specificaties van de motor online te vinden als u een modelnummer kunt vinden, maar als u dat niet heeft, sluit u deze aan op een gelijkstroomvoeding en verhoogt u langzaam de spanning naar de motor. We hadden geluk en ontdekten dat onze motor op 12-42V kon draaien, maar voor de zekerheid hebben we hem handmatig getest zoals beschreven. We kwamen er al snel achter dat zelfs bij 12V de motor veel te snel gaat draaien. De oplossing hier is om Pulse-Width-Modulation (PWM) te gebruiken. In feite zet dit de motor heel snel aan en uit om de motor op een lagere snelheid te laten draaien. Onze batterij levert 18V, dus om het leven gemakkelijk te maken, zullen we de motor op dezelfde manier laten draaien. Bij gebruik van gelijkstroommotoren die in circuits moeten omkeren, ervaart u een grote tegenstroom in uw circuit bij het omkeren van de motor. In wezen fungeert uw motor als een generator terwijl deze stopt en achteruitrijdt. Om uw controller hiertegen te beschermen, kunt u een zogenaamde H-Bridge gebruiken. Dit zijn in wezen 4-transistoren die in een H-vorm zijn gerangschikt. We gebruikten een product van Acroname. Zorg ervoor dat de bestuurder die u kiest de stroom aankan die nodig is voor uw motor. Onze motor was geclassificeerd voor 1A continu, dus de 3A-controller was voldoende hoofdruimte. Met dit bord kunnen we ook de richting van de motor regelen door simpelweg een ingang hoog of laag te sturen en de motor op dezelfde manier te remmen (de motor stoppen en op zijn plaats houden).

Stap 3: De printkop

De printkop
De printkop

Een groot deel van de originele printkopeenheid die kon worden verwijderd, werd verwijderd. We bleven achter met een plastic doos die het gemakkelijk maakte om onze printkop te bevestigen. Een kleine 5V DC-motor was bevestigd met een boor. Het bit werd gekozen om zo dicht mogelijk bij dezelfde diameter als een trechter mogelijk te zijn. Hierdoor kan de boor de hele uitlaat van de trechter vullen. Wanneer het bit draait, komt het poeder in de groeven en draait het naar beneden naar de uitgang. Door de bit één omwenteling te draaien, konden we een pixel van constante grootte creëren. Zorgvuldige afstemming zal nodig zijn om alles precies goed te laten passen. Aanvankelijk hadden we problemen met het poeder dat gewoon overal sproeide, maar door een tweede trechter toe te voegen en de boor op te tillen, maakte de langere val terwijl we aan de trechter vastzaten een schone pixel.

Aangezien deze motor alleen aan of uit gestuurd moest worden, was hier geen H-brug nodig. In plaats daarvan gebruikten we een eenvoudige transistor in serie met de massaverbinding van de motor. De poort van de transistor werd bestuurd door een digitale uitgang van onze microcontroller, net als de digitale ingangen van de H-brug. Het kleine printje naast de DC-motor is een infrarood zwart-wit sensor. Dit bord geeft eenvoudigweg een digitaal hoog of laag signaal af wanneer de sensor respectievelijk zwart of wit ziet. In combinatie met de zwart-witte codeerstrip kunnen we de positie van de printkop te allen tijde kennen door zwart-witovergangen te tellen.

Stap 4: De microcontroller

De microcontroller
De microcontroller

De Cypress PSoC integreert alle afzonderlijke stukken hardware. Een Cypress-ontwikkelbord bood een gemakkelijke interface voor het werken met de PSoC en het aansluiten van randapparatuur. De PSoC is een programmeerbare chip, dus we kunnen fysieke hardware in de chip maken, zoals een FPGA. Cypress PSoC Designer heeft kant-en-klare modules voor gemeenschappelijke componenten zoals PWM-generatoren, digitale in- en uitgangen en seriële RS-232-com-poorten.

Het ontwikkelbord heeft ook een geïntegreerd proto-bord waardoor onze motorcontrollers eenvoudig kunnen worden gemonteerd. De code op de PSoC brengt alles bij elkaar. Het wacht op het ontvangen van een serieel commando. Dit is geformatteerd als een enkele regel van 0 en 1s die aangeven dat voor elke pixel moet worden afgedrukt of niet. De code loopt dan door elke pixel en start de aandrijfmotor. Een randgevoelige onderbreking op de invoer van de zwart/wit-sensor activeert een evaluatie van het weer of niet om op elke pixel af te drukken. Als een pixel aan staat, wordt de remuitgang hoog aangestuurd en wordt een timer gestart. Een onderbreking van de timer wacht 0,5 seconden en drijft vervolgens de uitgang van de dispenser hoog, waardoor de transistor wordt ingeschakeld en de boor gaat draaien, de timer-teller wordt gereset. Na nog een halve seconde zorgt een onderbreking ervoor dat de motor stopt en de aandrijfmotor weer in beweging komt. Wanneer de voorwaarde om af te drukken onwaar is, gebeurt er gewoon niets totdat de encoder een andere zwart-witte rand leest. Hierdoor kan de kop soepel bewegen totdat deze moet stoppen om af te drukken. Wanneer het einde van een regel is bereikt ("\r\n") wordt een "\n" op de seriële poort gestuurd om aan de pc aan te geven dat deze klaar is voor een nieuwe regel. De richtingscontrole op de H-brug is ook omgekeerd. De Create krijgt het signaal om 5 mm vooruit te gaan. Dit gebeurt via een andere digitale uitgang die is aangesloten op een digitale ingang op de DSub25-connector van de Create. Beide apparaten gebruiken standaard 5V TTL-logica, dus een volledige seriële interface is niet nodig.

Stap 5: De pc

de pc
de pc
de pc
de pc

Om een volledig onafhankelijk apparaat te maken, werd een kleine x86-pc gebruikt, de eBox 2300. Voor maximale flexibiliteit werd een aangepaste versie van Windows CE Embedded op de eBox geïnstalleerd. Er is een applicatie ontwikkeld in C om een 8-bit grijsschaal bitmap van een USB-stick te lezen. De toepassing heeft vervolgens de afbeelding opnieuw gesampled en deze regel voor regel via de seriële com-poort naar de PSoC uitgevoerd.

Het gebruik van de eBox zou veel verdere ontwikkelingen mogelijk maken. Met een webserver kunnen afbeeldingen op afstand worden geüpload via geïntegreerde draadloze communicatie. Afstandsbediening zou onder meer kunnen worden geïmplementeerd. Verdere beeldverwerking, mogelijk zelfs een goede printerdriver, zou kunnen worden gemaakt om het apparaat in staat te stellen af te drukken vanuit toepassingen zoals Kladblok. Een laatste ding dat we bijna misten, was stroom. De Create levert 18V. Maar de meeste van onze apparaten werken op 5V. Een DC-DC-voeding van Texas Instruments werd gebruikt om de spanning actief om te zetten zonder stroom te verspillen aan warmte, waardoor de levensduur van de batterij werd verlengd. We hebben ruim een uur printtijd kunnen realiseren. Een op maat gemaakte printplaat maakte de montage van dit apparaat en de benodigde weerstanden en condensatoren eenvoudig.

Stap 6: Dat is het

Dat is het
Dat is het
Dat is het
Dat is het
Dat is het
Dat is het

Nou, dat was het dan voor onze PrintBot, gemaakt in de herfst van 07 voor de ECE 4180 Embedded Design-klas van Dr. Hamblen bij Georgia Tech. Hier zijn enkele afbeeldingen die we met onze robot hebben afgedrukt. We hopen dat je ons project leuk vindt en misschien zal het verdere verkenning inspireren! Grote dank aan de PosterBot en alle andere iRobot Create Instructables voor hun inspiratie en begeleiding.

Aanbevolen: