Arduino mega 2560 aansluiting. Arduino-kaarten instellen wanneer u voor het eerst verbinding maakt met een pc. Externe voedingsaansluiting

Dit is... zou je kunnen zeggen... het hart van een 3D-printer. Het is in deze microschakeling (Mega 2560) dat alle rekenbewerkingen voor het verwerken van de G-code "a plaatsvinden. In ons geval is deze m / s op een bepaald bord gesoldeerd. Op dit bord, naast de m / Op zichzelf is er veel andere rotzooi die is ontworpen voor een correcte werking en verbinding met de computer.

Arduino MEGA2560

Op het bord met deze chip wordt het uitbreidingsbord genaamd RAMPS 1.4 "aangezet" (zie de overeenkomstige paragraaf).

Algemene informatie

De Arduino Mega is gebaseerd op de ATmega2560 microcontroller (datasheet). Het bord heeft 54 ​​digitale I/O's (waarvan 14 kunnen worden gebruikt als PWM-uitgangen), 16 analoge ingangen, 4 UART seriële poorten, een 16 MHz kristaloscillator, een USB-connector, een voedingsconnector, een ICSP-header en een reset knop. Om te werken, moet u het platform via een USB-kabel op de computer aansluiten of stroom leveren met een AC / DC-adapter of een oplaadbare batterij. Arduino Mega 2560 is compatibel met alle uitbreidingskaarten die zijn ontworpen voor Uno- of Duemilanove-platforms.

Korte kenmerken

Microcontroller ATmega2560

Bedrijfsspanning 5V

Ingangsspanning (limiet) 6-20V

Digitale I/O's 54 (waarvan 14 ook als PWM-uitgangen te gebruiken)

Analoge ingangen 16

Gelijkstroom door ingang/uitgang 40 mA

Gelijkstroom voor output 3.3V 50mA

Flash geheugen 256 KB (waarvan 8 KB gebruikt voor bootloader)

Niet-vluchtig geheugen 4 KB

Klokfrequentie 16 MHz

Verschillen van borden met CH340G-chip

CH340G is een goedkope analoge chip voor USB. Stuurprogramma's worden niet automatisch geïnstalleerd. Er kunnen problemen optreden op sommige laptops.

stabilisator

De NCP1117ST50-stabilisator (AMS1117-5.0) brandt vaak als de eindschakelaars niet zorgvuldig zijn aangesloten op

Het Arduino Smart Home-systeem is erg in trek bij mensen die thuis of op kantoor maximaal comfort willen creëren.

Zijn bijzonderheid is de mogelijkheid om verschillende systemen te beheren zonder de medewerking van de eigenaar, en de essentie is om elektronische apparaten in één netwerk te combineren om elektriciteit te besparen, verlichting en elektrische apparaten te regelen, onbevoegden die het huis binnenkomen te waarschuwen en andere problemen op te lossen.

Een van de belangrijkste elementen van het smart home-systeem is in dit geval de Arduino. Wat het is? Hoe werkt hij? Welke functies vervult het? We zullen alles in detail in dit artikel bespreken.

Wat is Arduino?

Arduino (Arduino) is een speciale tool waarmee je elektronische apparaten kunt ontwerpen die een nauwere interactie hebben met de fysieke omgeving in vergelijking met dezelfde pc, die eigenlijk niet verder gaat dan virtual reality.

Het platform is gebaseerd op open source en het apparaat zelf is gebouwd op een printplaat met daarin ingebedde software.

Met andere woorden, Arduino is een klein apparaat dat controle biedt over verschillende sensoren, verlichtingssystemen en het ontvangen en verzenden van gegevens.

De Arduino bevat een microcontroller, een microprocessor die op een enkel circuit is gemonteerd. Het kenmerk is de mogelijkheid om eenvoudige taken uit te voeren. Afhankelijk van het model kan het Arduino-apparaat worden uitgerust met verschillende soorten microcontrollers.

Er zijn verschillende modellen boards, de meest voorkomende zijn UNO, Mega 2560 R3.

Een even belangrijk kenmerk van de printplaat is de aanwezigheid van 22 kabels, die zich rond de omtrek van het product bevinden. Ze zijn analoog en digitaal.

De bijzonderheid van de laatste is om te besturen met slechts twee parameters - een logische één of nul. Wat betreft de analoge uitgang, er zijn veel kleine gebieden tussen 1 en 0.

Tegenwoordig wordt Arduino gebruikt om elektronische systemen te maken die informatie kunnen ontvangen van verschillende sensoren (digitaal en analoog).

Op Arduino gebaseerde apparaten kunnen in combinatie met software op een computer of onafhankelijk werken.

Wat betreft de planken, u kunt ze zelf monteren of een afgewerkt product kopen. Arduino-programmering gebeurt in de bedradingstaal.

LEES OVER HET ONDERWERP:, overzicht, apparatuur, doe-het-zelf aansluiting en configuratie, scenario's.

Wat bestuurt de Arduino?

Door het grote aantal pinnen op de printplaat is het mogelijk om veel verschillende apparaten op Arduino aan te sluiten, namelijk:

Bovendien wordt een set sensoren op Arduino aangesloten, afhankelijk van de taken die aan het systeem zijn toegewezen. In de regel zijn licht-, rook- en luchtsamenstelling, magnetisch veld, vochtigheid, temperatuur en andere sensoren geïnstalleerd.

Dankzij deze functie wordt Arduino een universeel apparaat - de "denktank" van het "Smart Home"-systeem met de mogelijkheid om te worden geconfigureerd om aan de taken te voldoen.

Hoe het systeem werkt

Het Arduino-apparaat werkt als volgt. Informatie die via verschillende sensoren in huis wordt verzameld, wordt draadloos naar een tablet of pc gestuurd. Verder worden met behulp van speciale software gegevens verwerkt en een specifiek commando uitgevoerd.

De hoofdfunctie wordt uitgevoerd door de centrale sensor, die onafhankelijk kan worden gekocht of geassembleerd. De connectoren op de printplaten zijn standaard, wat de keuze van componenten enorm vereenvoudigt.

Voedsel

De Arduino wordt gevoed via de USB-connector of via een externe voeding. De spanningsbron wordt automatisch bepaald.

Als de optie met externe voeding niet via USB is geselecteerd, kunt u de batterij of voeding (spanningsomvormer) aansluiten. In het laatste geval wordt de aansluiting gemaakt met behulp van een 2,1 mm connector met een "+" op het hoofdcontact.

De draden van de batterij zijn verbonden met verschillende aansluitingen van de voedingsconnector - Vin en Gnd.

Voor normaal gebruik heeft het platform een ​​spanning van 6 tot 20 volt nodig. Als de parameter onder de 7 volt zakt, kan er minder spanning op de 5V-pin staan ​​en bestaat er een risico op storing.

Als 12 V wordt toegepast, kan de spanningsregelaar oververhit raken en het bord beschadigen. Om deze reden is het optimale niveau om te voorzien met 7 - 12 V.

In tegenstelling tot eerdere soorten boards, werkt de Arduino Mega 2560 zonder het gebruik van een FTDI-type USB-microcontroller. Om de uitwisseling van informatie via USB te waarborgen, wordt een converter gebruikt die is geprogrammeerd voor de USB-naar-serieel-converter.

POPULAIR BIJ LEZERS: .

De Arduino heeft de volgende vermogensuitgangen:

  • 5V - gebruikt om spanning te leveren aan de microcontroller, evenals andere elementen van de printplaat. De voeding is regelbaar. Spanning wordt geleverd via de USB-connector of van de VIN-pin, evenals van een andere 5 Volt-voeding met de mogelijkheid om te regelen.
  • VIN - gebruikt om spanning van een externe bron te leveren. De uitgang is nodig wanneer het niet mogelijk is om spanning te leveren via een USB-connector of een andere externe bron. Als er spanning op de 2,1 mm-aansluiting staat, wordt deze ingang gebruikt.
  • 3V3 is een pin, de spanning waarop een gevolg is van de werking van de FTDI-chip zelf. De stroomafnamelimiet voor dit element is 50 mA.
  • GND - aardpennen.

Schematisch diagram van het bord in pdf-formaat kan worden bekeken.

Verbinding

Met Arduino-mogelijkheden kunt u een groep apparaten aansluiten die zorgen voor stabiele communicatie met een pc, evenals met andere elementen van het systeem - microcontrollers of dezelfde Arduino-kaarten.

Het ATmega 2560-model heeft 4 poorten waarmee gegevens kunnen worden verzonden voor TTL en UART. Een speciale ATmega 8U2-chip op het bord verzendt de interface (een daarvan) via de USB-connector. PC-programma's krijgen op hun beurt een virtuele COM.

Er zijn nuances die afhankelijk zijn van het type besturingssysteem:

  • Als Linux op de pc is geïnstalleerd, vindt de herkenning automatisch plaats.
  • Als Windows is geïnstalleerd, is een extra .inf-bestand vereist.

Met behulp van het monitoringhulpprogramma wordt informatie verzonden en ontvangen in tekstformaat na verbinding met het systeem.

Het knipperen van de TX- en RX-LED's duidt op gegevensoverdracht. Er wordt een speciale Software Serial-bibliotheek gebruikt om informatie sequentieel te verzenden.

De kenmerken van de ATmega 2560 omvatten de aanwezigheid van SPI- en I2C-interfaces. Daarnaast bevat de Arduino de Wire-bibliotheek.

Project Ontwikkeling

Er zijn tegenwoordig veel Arduino-apparaten op de markt, met verschillende configuraties. Maar er is geen pasklare oplossing. Afhankelijk van de uit te voeren taak wordt elke set afzonderlijk geselecteerd. Om fouten te voorkomen, is projectontwikkeling vereist.

Wat voor soort projecten kunnen op Arduino worden gemaakt?

Met Arduino kun je veel unieke projecten maken. Hier zijn er slechts een paar:

  • De Rubik's Cube in elkaar zetten (het systeem doet het in 0,887 s);
  • Vochtigheidsregeling in de kelder;
  • Creatie van unieke schilderijen;
  • Berichten versturen;
  • Balancerende robot op twee wielen;
  • Geluidsspectrumanalysator;
  • Origami lamp met capacitieve sensor;
  • Robotarm bestuurd door Arduino;
  • brieven schrijven in de lucht;
  • Flitsbediening en meer.

Een slim huis ontwerpen

Overweeg een situatie waarin u automatisering moet maken voor een huis met één kamer.

Zo'n gebouw bestaat uit vijf hoofdgebieden: een inkomhal, een veranda, een keuken, een badkamer en een woonkamer.

Houd bij het opstellen van een project rekening met het volgende:

  • PORTIEK. Het licht gaat in twee gevallen aan - de eigenaar nadert het huis 's nachts en de deuren worden geopend (wanneer een persoon het gebouw verlaat).
  • BADKAMER. De ketel heeft een hoofdschakelaar, die uitschakelt wanneer een bepaalde temperatuur is bereikt. De ketel wordt geregeld afhankelijk van de beschikbaarheid van geschikte automatisering. Bij het betreden van de kamer moet de kap werken en gaat het licht aan.
  • GANG . Dit vereist het inschakelen van het licht in het donker (automatisch), evenals een bewegingsdetectiesysteem. 'S Nachts gaat een spaarlamp branden, waardoor ongemak voor andere bewoners van het huis wordt voorkomen.
  • KAMER . Het licht wordt handmatig ingeschakeld, maar indien nodig en de aanwezigheid van een bewegingssensor kan deze manipulatie automatisch plaatsvinden.
  • KEUKEN . Het in- en uitschakelen van het licht in de keuken gebeurt handmatig. Automatische uitschakeling is toegestaan ​​in het geval van een langdurig gebrek aan beweging in de kamer. Als een persoon begint te koken, wordt de afzuigkap geactiveerd.

Verwarmingsapparaten voeren de taak uit om de vereiste temperatuur in de kamer te handhaven. Als er geen mensen in huis zijn, zakt de ondergrens van de temperatuur naar een bepaald niveau.

Na het verschijnen van mensen in het gebouw stijgt deze parameter naar zijn vorige waarde. Luchtrecuperatie wordt uitgevoerd wanneer het systeem de aanwezigheid van de eigenaar heeft gedetecteerd. De duur van het proces is niet meer dan 10 minuten per uur.

Het is de moeite waard om op te letten dat als installatie in huis is gepland, het beter is om applicaties op mobiele apparaten, wifi of via sms-berichten te gebruiken om ze te bedienen.

Visuele programmering voor Arduino kan worden gedaan met behulp van een speciale FLProg-toepassing, die kan worden gedownload van de officiële website http://flprog.ru/.

We selecteren de complete set voor het project op het voorbeeld van Arduino Mega 2560 R3

Om een ​​volwaardig Smart Home-systeem te creëren en de toegewezen functies uit te voeren, is het belangrijk om de configuratie en selectie van apparatuur correct te benaderen.

Wat zit er in het pakket?

Als uw doel een op Arduino gebaseerd Smart Home is, moet u de volgende apparatuur voorbereiden: het Mega 2560 R3-bord zelf, een Ethernet-module (ENC28J60), een bewegingssensor en andere sensoren en controllers.

Bovendien is het de moeite waard om een ​​twisted pair-kabel, een weerstand, een relais, een schakelaar en een kabel voor de Ethernet-module voor te bereiden.

Er is ook extra gereedschap nodig - schroevendraaiers, soldeerbouten, enz.

Houd er rekening mee dat het de moeite waard is om kits te kopen om het systeem op gecertificeerde punten te monteren. Dit komt door het feit dat elektriciteit wordt gebruikt bij de uitvoering van het project en het gebruik van nep kan leiden tot een verlaging van het beveiligingsniveau.

Alle aanpassingsprogramma's zijn online te vinden op de officiële Arduino-website http://arduino.ru. Bij het kiezen van sensoren is het de moeite waard om te focussen op de taken die het Smart Home moet oplossen.

In de regel zijn bewegings-, temperatuur-, deuropenings- en lichtsensoren vereist. De rol van de deuropeningssensor kan worden uitgevoerd door een conventionele reed-schakelaar.

Het bord wordt geflasht met behulp van speciale software die is ontworpen voor verschillende besturingssystemen, waaronder een USB-kabel. Er zijn geen programmeurs nodig.

Wat betreft de software die in Arduino wordt gebruikt, deze is geschreven in C-taal. Er zijn bepaalde beperkingen aan het aantal bytes, maar het huidige geheugen is voldoende om de taak uit te voeren.

Begin van het werk

Zodra de benodigde apparatuur is voorbereid en het project is ontwikkeld, kunt u beginnen met het voltooien van de taak.

Stadia

Bij het organiseren van een Smart Home-systeem op basis van Arduino, is het de moeite waard om volgens het volgende algoritme te handelen:

  • Installatie van programmacode;
  • Applicatieconfiguratie voor het gebruikte apparaat;
  • Port forwarding (voor router);
  • Testen uitvoeren;
  • Bewerken en ga zo maar door.

Het web heeft alle benodigde software voor de gebruikte apparatuur - download het gewoon van de officiële website en installeer het (zie de link hierboven).

Met de applicatie kunt u informatie over de sensoren bekijken. Indien nodig kunnen de instellingen van het IP-adres worden gewijzigd.

De volgorde van acties bij verbinding met een computer

Volg deze stappen om aan de slag te gaan met Arduino op Windows:

  • Bereid de benodigde apparatuur voor - USB-kabel en Arduino.
  • Download de software van arduino.cc/en/Main/Software.
  • Sluit het bord aan met een USB-kabel. Kijk of de PWR-LED gaat branden.
  • Installeer de benodigde stuurprogramma's om met Arduino te werken. In dit stadium is het de moeite waard om de installatie van het stuurprogramma te starten en te wachten tot het proces is voltooid.
    Klik vervolgens op de knop "Start" en ga naar het configuratiescherm. Open daar het tabblad "Systeem en beveiliging" en selecteer het gedeelte "Systeem". Nadat het venster is geopend, selecteert u "Apparaatbeheer", klikt u op de naam van Arduino en gebruikt u de rechtermuisknop om de opdracht in te stellen om de driver bij te werken. Zoek de regel "Browse my computer for Driver software!", klik erop en selecteer het juiste stuurprogramma voor uw bordtype - ArduinoUNO.inf (bevindt zich in de map met stuurprogramma's). Het kan UNO, Mega 2560 of een andere zijn.
  • Start de Arduino-ontwikkelomgeving door te dubbelklikken op het toepassingspictogram.
  • Open het voltooide voorbeeld (Bestand - Voorbeelden - 1.Basics - Blink).
  • Kies een vergoeding. Om dit te doen, gaat u naar het gedeelte Hulpmiddelen en vervolgens naar het Bordmenu.
  • Installeer de seriële poort (u kunt deze vinden door de kabel los te koppelen en weer aan te sluiten).
  • Download de schets in Arduino. Klik op "Uploaden" en wacht tot de TX- en RX-LED's op het bord knipperen. Aan het einde geeft het systeem aan dat de download is gelukt. Enkele seconden nadat het werk is voltooid, moet LED 13 L gaan branden (deze gaat oranje knipperen). Als dat het geval is, is het systeem klaar om taken uit te voeren.

Werken met een router

Voor de volledige werking van het Smart Home is het belangrijk om goed met de router om te gaan. Hier moet u het volgende doen - open de configuratie, specificeer het Arduino IP-adres, bijvoorbeeld 192.168.10.101 en open de 80e poort.

Daarna moet u een domeinnaam aan het adres toewijzen en doorgaan met het testen van het project. Houd er rekening mee dat voor een dergelijk systeem het gebruik van een openbaar IP-adres verboden is, omdat er in dit geval een groot risico is op hacking via het netwerk.

Uitbreiding op Arduino

Een van de mogelijkheden van een smart home is het visualiseren van de staat van automatisering en de processen die in het systeem plaatsvinden. Om dit te doen, wordt het aanbevolen om een ​​aparte server te gebruiken die staatsverwerking biedt (er kan een Node.js-programma worden gebruikt).

De genoemde softwaretechnologie wordt gebruikt om internetproblemen op te lossen, daarom wordt de Java Script-taal gebruikt om de "Smart Home" te visualiseren (met behulp hiervan worden de handler en server gemaakt). De resultaten zijn te zien op een computer- of pc-scherm.

Om het plan uit te voeren, is een laptop, een gewone pc of een Raspberry Pi geschikt. Het gebruik van een dergelijk systeem maakt het mogelijk de mogelijkheden ervan te vergroten. Dus als het Arduino-bord een kleine hoeveelheid geheugen heeft, zijn er geen dergelijke beperkingen op de server. Het programma is zo geschreven dat het volledige controle over het platform biedt.

Indien gewenst kunt u een algoritme instellen dat registreert dat er een persoon in huis is en deze informatie verzamelt. Als de eigenaar elke dag rond 17.30 uur terugkomt, kan de ketel of verwarmingstoestellen binnen een uur aan. Bij thuiskomst bevindt een persoon zich in een warm gebouw met warm water.

Het programma kan de tijd onthouden waarop de eigenaar gaat rusten en de waterverwarming uitschakelt. Er zijn veel van dergelijke nuances die, indien nodig, in het programma worden geïntroduceerd. Het is de aanwezigheid van een externe pc die geweldige kansen biedt aan de Arduino-controller.

Communicatie met Arduino

Om te weten welke acties moeten worden uitgevoerd, moet de processor de juiste opdracht ontvangen. Communicatie wordt uitgevoerd met behulp van een speciale taal die is aangepast om met Arduino te werken en is vrij eenvoudig. Indien gewenst is het gemakkelijk om erin te werken, zelfs als er geen programmeerkennis is.

Het formatteren en verzenden van een bericht naar de controller wordt programmeren genoemd. Om het proces te vereenvoudigen, is de Arduino IDE ontwikkeld, die veel programma's bevat. Hun studie stelt je in staat om veel nuttige informatie te krijgen over het werken met Arduino.

Hoe kun je managen?

Zoals opgemerkt, kunt u met de Node.js-server hardware in uw huis met elkaar verbinden. Een van de manieren om processen te beheren, zijn cloudservices op internet. Tegelijkertijd kunt u één tot twee uur voor aankomst de verwarming of de boiler aanzetten.

Een andere manier is om te beheren via berichten (MMS of SMS). Deze optie is relevant wanneer er geen verbinding met internet is. Een van de voordelen van het systeem is de mogelijkheid om informatie te verkrijgen over een overmachtsituatie (bijvoorbeeld een lek). Het Edison-bord van Intel helpt hierbij.

Wat krijgen we uiteindelijk?

Tegenwoordig is Arduino in trek bij mensen die niets weten van programmeren.

De reden hiervoor is een eenvoudige interface, evenals een aantal voordelen: een eenvoudige programmeertaal, de mogelijkheid om uw eigen algoritme te maken dankzij open source-code en het gemak van het overzetten van programma's met een USB-kabel. De software die nodig is voor Arduino is beschikbaar op internet, dus hier zijn geen problemen.

Zoals je kunt zien, is Arduino niet zomaar een bord waarop je verschillende apparaten kunt aansluiten. Dit is een krachtige basis die gebruikt kan worden om een ​​Smart Home te creëren. Tegelijkertijd is het niet nodig om veel geld uit te geven aan dure apparaten, waarvan de kosten 5-10 keer hoger zijn.

Dit zijn de belangrijkste voordelen van het systeem.

De kenmerken van het bord zijn onder meer de mogelijkheid om verbinding te maken met een computer en een visualisatie van processen op het scherm van een tablet of pc te krijgen.

Automatiseringsbesturing is mogelijk via internet of via berichten. Dus Arduino is geweldig voor het maken van apparaten met een grotere complexiteit.

Hallo kameraden.

Onderwerpen met jambs RAMPS "een pop-up de hele tijd. Er zijn veel oplossingen voor deze jambs, maar alles is verspreid over de commentaren en forums. Tijdens het verzamelen en toepassen van deze informatie werd het gedood: Arduin 1 pc, Ramps 1 pc, transistors met een dozijn Het resultaat van mijn kwelling was dat ik een half jaar niet in het elektronicacompartiment heb gekeken vanwege het falen van iets.

Zoals je al hebt begrepen, zullen we het hebben over een gemeenschappelijke set Arduino Mega 2560 + Ramps 1.4. Waarschijnlijk de meest voorkomende en zeker de meest betaalbare elektronicakit voor een 3D-printer.

In de post zal ik de punten die ik heb gedaan opschrijven met een beschrijving van hoe het moet. Of u deze punten (alle of enkele) volgt, is aan u. Ook ben ik niet verantwoordelijk als je daar iets verbrandt. Ik waarschuw je ook dat ik geen elektronica-ingenieur ben, alles wat hier wordt beschreven, is niet door mij uitgevonden. Ik wil gewoon de meest naar mijn mening geslaagde en noodzakelijke aanpassingen in elkaar zetten.

Laten we beginnen.

1. Het eerste wat ik aanbeveel is om de groene connector van de RAMPS weg te gooien. Als u verder advies opvolgt, is het niet nodig. Maar zelfs als dat niet het geval is, gooi het dan gewoon weg en soldeer de draden op hun plaats. Deze connector is te zwak voor de stroom die nodig is om de tafel van stroom te voorzien. Na verloop van tijd zal het smelten, wat tot trieste gevolgen zal leiden.

Als u de tafelvoeding opnieuw maakt volgens de instructies in paragraaf 3, hoeft u slechts twee draden te solderen in plaats van de groene connector. Op het bord onder de connector zijn de voedingscontacten genummerd. Contact nummer 4 is een minpuntje. Nummer 3 is een pluspunt. We solderen de draden eraan en sluiten ze aan op de voeding.

2. Verwijder diode D1 uit RAMPS. Dit zal de kracht van de RAMPS, en daarmee de motoren, drivers en al het andere, scheiden van de kracht van de Arduino. Waarom dit nodig is, zal duidelijk worden uit de volgende paragrafen.

3. Nu, waarschijnlijk het belangrijkste en meest noodzakelijke punt. Minstens één keer per maand komen er vragen over. Organisatie van de normale maaltijden van de tafel.

Wat je nodig hebt:

Allereerst heb je een normale vermogenstransistor nodig. Degenen die de Chinezen gebruiken, zijn niet geschikt, hoewel ze werken. Geschikte transistormodellen: IRL 3705n, IRL2203n, IRL3803, IRL2505. Kies wat het goedkoopste is in uw radioproducten (de prijs is meestal van 30 tot 100 roebel), als dit niet het geval is, zoek dan naar analogen op Google, er zijn er veel. De parameters moeten als volgt zijn: afvoerstroom vanaf 30A, hoe hoger hoe beter, bron-afvoerspanning vanaf 25V, poortspanning 4,5V, TO220AB-behuizing. Ik begrijp dat doorgewinterde elektronische ingenieurs me met geschreeuw zullen aanvallen, dat dit verre van alle belangrijke parameters zijn, maar ik heb ze volgens hen geselecteerd en alles werkt voor mij, dus waarom zou ik de jungle in klimmen?

Draden. Ik gebruik Chinese 14AWG-draden. Ze zijn voldoende en ze worden niet warm. Zoek naar een plaat met correspondentie met onze secties in Google.

Soldeerbout vanaf 60 watt. RAMPS is vrij moeilijk te solderen, of beter gezegd om er uit te solderen. Oefen dus op het oude vasteland.

Aluminium radiateur. Maten vanaf 20x20x20mm en groter. Je kunt het zonder doen, daarover hieronder meer.

Alle kleine dingen voor solderen, soldeer, vloeimiddel, krimpkous, enz. Als je niet weet wat het is, neem het dan niet.

Nu direct naar het proces:

Het eerste dat u moet doen, is de oorspronkelijke vermogenstransistor van de tafel solderen.

We hebben hem niet meer nodig. Je kunt het natuurlijk gebruiken, maar het wordt zelfs op een radiator erg heet, dus het is gemakkelijker om een ​​​​normale transistor te kopen voor 50r.

Nu moet je in plaats van de poot, die zich dichter bij de grote oranje zekeringen bevindt, ofwel de bedrading solderen (je kunt elke dunne draad gebruiken) of, zoals ik deed, een pin zoals die langs de randen van de RAMPS. Je kunt het van elk oud moederbord halen (ja, er zijn er veel waar ze worden gebruikt). Ik heb de pin gesoldeerd zodat ik hem op elk moment kon uitschakelen zonder me zorgen te hoeven maken over het solderen van RAMPS.

We zijn voorlopig klaar met RAMPS. Laten we beginnen met de transistor.

Alles is heel eenvoudig aangesloten.

Vanaf het linkerbeen (sluiter) wordt de draad aangesloten op de RAMPS, op dezelfde pin. De connector voor dergelijke contacten wordt verkocht onder de naam BLS-01.

De centrale poot (afvoer) wordt aangesloten op een van de contacten van de tafel (polariteit is niet belangrijk voor de tafel).

Het rechterbeen (bron) is rechtstreeks aangesloten op MINUS stroomvoorziening.

Alle draden zijn zorgvuldig gesoldeerd en geïsoleerd met krimpkous.

Vanaf het tweede contact van de tafel wordt de draad direct aangesloten PLUS stroomvoorziening. Ik let goed op de polariteit van de verbinding. De tabel maakt het niet uit waar je de plus en min aansluit, maar de transistor niet. De transistor moet op de negatieve lijn hangen.

Nu blijft het om de transistor op de radiator te schroeven of te lijmen. Ik heb het gemakkelijker gemaakt, de transistor door middel van koelpasta rechtstreeks op de voedingsbehuizing in het standaardgat geschroefd. Gelukkig is de PSU-behuizing van aluminium. Nu is de transistor altijd koud.

Als gevolg van deze wijziging hebben we toegestaan ​​dat het vermogen van de tafel RAMPS omzeilt. Van RAMPS gaat alleen een signaal naar de gate van de transistor. De stroom voor de rest van de elektronica (behalve Arduino) gaat nog steeds via de RAMP's langs de draden die we in stap 1 hebben gesoldeerd. Let erop dat de negatieve draad van de RAMPS en de draad van het rechterbeen (source) van de transistor moet worden aangesloten op hetzelfde negatieve contact van de blokvoeding.

4. Laten we het nu hebben over de Arduino-voeding. In paragraaf 2 adviseerde ik om de voeding van Arduino en RAMPS te scheiden. Hiervoor zijn twee redenen.

Ten eerste is 12 volt voor de Arduino-converter veel, dit is de grenswaarde en bij deze spanning wordt hij niet een beetje warm en kan hij doorbranden. Zeker als je extra verbruikers aansluit, zoals een display.

Ten tweede zal hierdoor de RAMPS-voedingsspanning boven de 12 volt komen.

Waarom de RAMPS-voedingsspanning verhogen? Er is maar één reden - om de verwarming van de tafel te versnellen. Op 12V warmt de tafel lang op. De tijd hangt af van de specifieke instantie, of beter gezegd van de weerstand ervan. Het kan tot 15 minuten duren, wat erg lang is. Er is natuurlijk een optie om de tafel naar een lagere weerstand te veranderen, maar naar mijn mening is het gemakkelijker om de spanning op de PSU aan te passen. Ik heb mijn voeding op 15V gezet. Tegelijkertijd heb ik een standaard 12V-verwarming op de hot-end en is de tafel aangesloten volgens het 12V-circuit. De tafel warmt op tot 100 graden in 4-5 minuten zonder enige isolatie. Het enige dat ik hoefde te doen, was een PID-test uitvoeren op het M303-commando om de temperatuur van de hot-end gelijk te trekken. Ondanks de verhoogde voedingsspanning van de hotend heater wordt de temperatuur binnen +-0,5 graden van de ingestelde gehouden.

Hoe de Arduino van stroom te voorzien? Er zijn twee opties.

Voed het eerst via USB. De meest eenvoudige en onhandige. Ik gebruik de printer al geruime tijd op deze manier. Als je print vanaf een computer, sluit dan geen extra apparatuur aan op de Arduino (server, display), dan is het best een werkende optie. Over de nadelen van zo'n verbinding, denk ik, is het niet de moeite waard om over te praten.

De tweede optie is een DC-DC step-down spanningsomvormer. Hier is er een.

Het kost een cent en is heel eenvoudig aangesloten. De IN-pinnen worden gevoed door de PSU, de OUT-pinnen worden gevoed door de ronde Arduino-connector. Eerst moet u de uitgangsspanning van de omvormer instellen op 7-9 volt. Dit is de optimale spanning voor de Arduino native converter. Voor meer betrouwbaarheid en ruimtebesparing heb ik de ronde connector van de Arduino verwijderd en de draden van de converter rechtstreeks op het bord gesoldeerd. Wanneer u nu een beeldscherm met een kaartlezer verbindt, wordt de printer autonoom van de computer.

5. Het laatste punt. Koelventilatoren voor hot-end en elektronica. Meestal zijn de ventilatoren aangesloten op de RAMPS, maar doordat we de spanning verhoogden, begonnen de ventilatoren met overbelasting te werken. Dit verkort niet alleen hun levensduur, ze worden ook enorm luid. De oplossing is simpel. Een andere converter van punt 4 aangesloten op de PSU. Met deze verbinding kunt u ook de ventilatorsnelheid aanpassen en deze zo kiezen dat deze niet te luid en voldoende is om te koelen.

Maar dit is een tijdelijke oplossing, want. Onlangs zag ik hier een artikel over zo'n module. Besteld, ik zal de ventilatoren er doorheen verbinden.

Dat is alles. Ik hoop dat het artikel nuttig zal zijn.

Bij het ontwikkelen van projecten op arduino kom je vroeg of laat twee problemen tegen:

  • de noodzaak om ruimte te minimaliseren;
  • gebrek aan functionele invoer-uitvoerpoorten.

Het eerste probleem wordt op een elementaire manier opgelost - met behulp van miniatuurborden: nano, mini, pro mini, micro, digispark attiny 85. Als het nanobord en andere miniborden de functionaliteit van een gewone Arduino UNO herhalen, met een atmega328 / 168 aan boord, dan zijn borden met Attiny85 en haar soortgelijke geschikt voor eenvoudige projecten met minimale functionaliteit.

De tweede vraag wordt op twee manieren opgelost:

  1. Penverlenging met schuifregisters, type 74HC595. Helaas kunt u met deze methode PWM niet gebruiken voor verlengde pinnen, en deze methode werkt alleen voor uitgangssignalen.
  2. Het combineren van meerdere kaarten in één systeem en hun verbinding met behulp van verschillende gegevensuitwisselingsinterfaces; deze methode is echter nogal gecompliceerd en niet altijd gerechtvaardigd.

Je kunt dit probleem op een andere manier oplossen - hier een groot Arduino mega 2560-bord of zijn analoog met USB-hostondersteuning - ADK Arduino komt te hulp, maar eerst en vooral.

Meer over Arduino op Atmega 2560

Laten we beginnen met het uiterlijk. In de bovenstaande afbeelding is het duidelijk dat het Arduino mega 2560 r3-bord (huidige versie op het moment van schrijven) twee keer zo lang is als UNO. Het heeft 54 ​​invoer-/uitvoerpoorten, waarvan er 15 kunnen werken als een PWM-signaalbron voor een soepele regeling van vermogen, stroom, snelheid, helderheid, in het algemeen alles dat kan worden aangepast met behulp van pulsbreedtemodulatie, plus 16 analoge poorten die signalen kunnen verwerken van sensoren, worden gebruikt als digitale uitgang.

Voor communicatie tussen verschillende apparaten zijn er maar liefst 4 UART-interfaces, hun rol wordt gespeeld door pinnen 0, 1, 14-19. Een van de poorten wordt via de ATmega8U2-microcontroller naar USB geleid - hij wordt hier gebruikt in plaats van de gebruikelijke USB-TTL-controller op lagere boards, en de firmware kan gratis worden gedownload. SPI- en I2C-technologieën worden geleverd voor communicatie met verschillende displays en andere bedieningsapparaten.

Specificaties

  • Microcontroller: ATmega2560
  • Klokfrequentie: 16MHz
  • Spanning: 5V
  • Grensspanningen: 5-20 V
  • Aanbevolen voedingsspanning: 7-12V
  • Max. stroom van één uitgang: 40 mA
  • Digitale pinnen: 54
  • Digitale pinnen met PWM-ondersteuning: 15
  • Analoge ingangen: 16
  • Flash-geheugen: 256 KB (waarvan 8 worden gebruikt door de bootloader)
  • SRAM: 8 kB
  • EEPROM: 4 KB

Bord pinout

Hieronder vindt u de pinout en pintoewijzing - de belangrijkste informatie voor de ontwikkelaar.

De afmetingen van het Arduino MEGA 2560-bord zijn 10,16 cm bij 5,3 cm, tegen UNO - 6,9 cm bij 5,3. Aan de ene kant bleek het bord te groot, aan de andere kant maken de grotere afmetingen het handig om met een krachtige microcontroller te werken.

Voor meer afbeeldingen en een schematisch diagram van Mega, zie onze website op. De meest voorkomende is nu het Arduino mega 2560 rev3-bord. In vergelijking met de eerste revisies zijn er een aantal verbeteringen aangebracht met betrekking tot het opnieuw opstarten van het bord tijdens firmware, voor de betrouwbaarheid van het laden van gegevens en andere kleine upgrades.

Atmega2560 bordchip Arduino MEGA 2560

Atmega2560 is een zeer krachtige chip. De ontwikkelaar heeft maar liefst 256 KB Flash (in Arduino wordt 8 KB ingenomen door de bootloader), 8 KB SRAM en 1 KB EEPROM. Arduino werkt echter met zo'n hart op een frequentie van 16 MHz, net als de jongere boards - UNO en vele anderen.

Het bord kan worden gevoed via een ronde voedingsconnector van 2,1 mm met een plus in het midden, of via een USB-poort, de bron wordt automatisch geselecteerd. Het is vermeldenswaard dat bij een voedingsspanning van 7-20 volt het bord prima werkt, en bij een lagere spanning, bijvoorbeeld 5 volt, kunnen situaties met onstabiele werking optreden. Maak een notitie.

CPU-pinout

Hieronder is een diagram van de pinout van de chip, om te vergroten - klik op de afbeelding:

Als bron zijn beide AC/DC-converters op het lichtnet, zoals voor een LED-strip (12 V) bijvoorbeeld perfect, en batterijen of één cel van een Li-ion-accu met een step-up-converter om de gewenste spanningswaarden te bereiken .

Op bord gebaseerde projecten

Het gebruik van de Arduino MEGA 2560 maakte het mogelijk om een ​​echt groot en complex microcontrollersysteem te maken. Er is bijvoorbeeld een heel interessant project dat steun heeft gekregen in de Russische Federatie en actief wordt ontwikkeld - dit is de Arduino Mega Server. De microcontroller is zo krachtig dat hij een volledige server kan worden voor de internetsites of clouds.

De enige beperking op zo'n server is de hoeveelheid geheugen, omdat je micro SD-geheugenkaarten als schijf kunt gebruiken en Ethernet een maximale geheugengrootte van 32 GB ondersteunt.

Arduino Mega Server is een serieus project met brede functionaliteit, dat alle technologieën ondersteunt die nodig zijn voor een webmaster:

  • HTML;
  • JavaScript en andere.

Op de pagina's die u maakt, en hun aantal wordt alleen beperkt door hun grootte en de capaciteit van uw geheugenkaart, kunt u de real-time status van de controller volgen en de in- en uitgangen regelen met behulp van de knoppen op de webinterface van de plaats. Ondersteuning voor veel Javascript-bibliotheken zal de interface mooi en modern maken.

Met Arduino Mega Server kunt u krachtige vertakte geautomatiseerde besturingssystemen maken met afstandsbediening en bewaking van alle parameters of opslag in de thuiscloud. In onderstaande figuur zie je een screenshot van de smart home control pagina van de officiële website van het project.

Hier is een kleine lijst met projecten die zijn geïmplementeerd met de Arduino Mega Server:

  1. Smart home - is al een klassiek toepassingsgebied voor arduino geworden.
  2. Geautomatiseerde stookruimte.
  3. Kaseconomie met automatische ondersteuning van vocht en zoutsamenstelling van de bodem.
  4. Weerstation.
  5. En veel meer.

Je krijgt een besturingssysteem om met arduino te werken vanaf een computer of smartphone via een webinterface. Het is echter de moeite waard om op de hoogte te zijn van de mogelijkheden en kracht van de Arduino mega 2560-microcontroller, hoewel het bord zelf krachtiger is dan zijn voorgangers, maar naar moderne maatstaven verouderd. Dit zijn allemaal dezelfde 8 bits en 8 kb RAM. De snelheid waarmee u gegevens van de server downloadt, is klein, maar voldoende voor webpagina's.

Arduino server bouwpakket

Om een ​​Arduino Mega Server-project te bouwen, heb je minimaal drie componenten nodig:

  1. Arduino Mega-bord
  2. Ethernet-schild voor Arduino.
  3. Micro SD-geheugenkaart.

De overige componenten worden gerekruteerd in overeenstemming met de functies die aan de server zijn toegewezen. Om kennis te maken met alle nuances en technische documentatie, kunt u alle benodigde materialen en bibliotheken downloaden van de officiële website van het project hi-lab.ru.

Op dit moment wordt het Arduino Mega Server-project ondersteund op drie platforms, waarvan er twee beter presteren dan de mega 2560:

  • Arduino mega2560
  • Arduino Due (32 bit MK, 84 MHz, 512 kb geheugen en 96 kb RAM verdeeld in twee banken - 64 kb en 32 kb);
  • Genuino 101 (Intel Quark - als processor, 32-bits, 32 MHz, 24 KB RAM).

Andere interessante projecten op de Arduino Mega 2560

Slimme huiscontrolesystemen winnen aan populariteit. Er zijn veel smart home-implementaties, sommige worden bestuurd via een webinterface, zoals beschreven in de vorige sectie. De onderstaande foto toont een voorbeeld van de lay-out van zo'n systeem.

Hier wordt voor communicatie met een smartphone een speciaal schild gebruikt, de naam is "1shield". Met de officiële app kun je verbinding maken met je schild via wifi of Bluetooth. Om het met Arduino te laten werken, moet je de 1shield-bibliotheek downloaden - een speciale bibliotheek.

Elektronische barman op arduino

Als je niet zonder je favoriete cocktails kunt, maar niet wilt leren hoe je ze moet maken, dan zal een arduino-bartenderrobot je helpen.

Het project was gebaseerd op Arduino Mega, om het mechanisme voor de beweging van een glas en het inschenken van drankjes te implementeren, werd een stappenmotor gebruikt (voor longitudinale beweging van de container) en een servoaandrijving om de kleppen van de robot te openen. Hieronder ziet u een voorbeeldschema van het apparaat.

Conclusies over het Arduino Mega-bord

Er zijn er veel op het netwerk, zowel voor- als tegenstanders van de 8-bits architectuur van Arduino-boards - ze proberen debug-boards van de STM-familie te vervangen, en soms worden ze vergeleken met single-board microcomputers. Het tijdperk van de arduino zal echter nog lang voortduren, aangezien het een eenvoudig platform is om op een leuke manier over elektronica en microcontrollers te leren.

Bovendien is de vandaag geteste Arduino mega 2560-server een verademing voor het hele platform. Mee eens dat het leuk is om een ​​persoonlijke server voor uw sites te kunnen plaatsen met de ondersteuning van de nodige technologieën en een laag stroomverbruik. Je moet dit idee niet vergelijken met servers op oude computerhardware enzovoort, de voordelen liggen voor de hand:

  1. Geen geluid tijdens het gebruik, omdat er geen koelers van het koelsysteem zijn.
  2. Kleine hoeveelheid ruimte bezet.
  3. Lage prijs.
  4. Klein stroomverbruik.

Leer microcontrollers en introduceer geavanceerde technologieën in het dagelijks leven.

Dit bord verschilt van andere arduino's door een groot aantal in- en uitgangen, meer geheugen en andere kenmerken, die we hieronder zullen bespreken. Arduino Mega wordt gepresenteerd in verschillende versies. Ze verschillen praktisch niet van elkaar. De verschillen tussen de Arduino Mega 2560 R3 en eerdere versies van het bord zitten in de volgende details:

  • Om de USB-UART-interface om te zetten, wordt de ATmega16U2-microcontroller gebruikt in de R3-versie en ATmega8U2 in de R1- en R2-versies van het bord.
  • Sinds versie R2 is er een pull-up weerstand voor de HWB-lijn op het bord toegevoegd. Dit maakt het firmwareproces van de microcontroller eenvoudiger en handiger.
  • In versie R3 zijn een aantal pinnen toegevoegd voor de I2C SDA en SCL seriële interface.
  • De ruisimmuniteit van het resetcircuit is ook verbeterd.
  • Gewijzigde microcontroller om te werken met USB-UART-interface van ATmega8U2 naar ATmega16U2

Zoals u kunt zien, hadden de wijzigingen geen invloed op de prestaties. Daarom zullen we het verder alleen hebben over de nieuwste versie van dit bord.

Arduino Mega 2560 R3

Arduino Mega 2560 is uitgerust met een ATmega2560 microcontroller met een klokfrequentie van 16 MHz.

Kenmerken van Arduino Mega 2560

  • Microcontroller: ATmega2560
  • Klokfrequentie: 16MHz
  • Bedrijfsspanning: 5V
  • Limiet voedingsspanningen: 5-20 V
  • Aanbevolen voedingsspanning: 7-12V
  • Maximale stroom van één uitgang: 40 mA
  • Digitale ingangen/uitgangen: 54
  • Digitale I/O met PWM-ondersteuning: 15
  • Analoge ingangen: 16
  • Flash-geheugen: 256 KB (waarvan 8 worden gebruikt door de bootloader)
  • SRAM: 8 kB
  • EEPROM: 4 KB

De Arduino Mega 2560 van stroom voorzien

Dit bord kan op vier verschillende manieren worden gevoed:

  1. Via de USB-poort. U kunt de arduino van stroom voorzien vanaf een computer, powerbank, smartphone (als deze de OTG-modus ondersteunt) of via een adapter die op een stopcontact is aangesloten.
  2. Door pin + 5V. Deze pin is niet alleen een uitgang, maar ook een ingang. Doe voorzichtig! Op deze pin moet 5 volt staan. Anders kunt u de microcontroller zelf verbranden.
  3. Via de stekker op het bord. U kunt batterijen, accu's en diverse voedingen gebruiken. Deze stekker is verbonden met de VIN-pin. Spanning en voorzorgsmaatregelen worden beschreven in de volgende paragraaf.
  4. Via de VIN-pin. De stroom van deze pin gaat door de ingebouwde spanningsregelaar. Volgens de fabrikant kun je van 5 tot 20 volt toepassen. Maar zo is het niet. Aangezien de stabilisator niet 100% efficiënt is, is de spanning mogelijk niet voldoende om de microcontroller van stroom te voorzien wanneer er 5 volt op de VIN-pin wordt gezet en hebben de digitale pinnen geen 5 volt, maar minder. Werk ook niet op maximale spanning. Bij 20 volt op de VIN-pin wordt de spanningsregelaar erg heet, tot hij uitvalt. Daarom wordt aanbevolen om een ​​spanning van 7 tot 12 volt te gebruiken.

Zoals hierboven al vermeld, heeft het bord 54 digitale pinnen. Ze kunnen zowel input als output zijn. De bedrijfsspanning van deze pinnen is 5 V. Elk van hen heeft een pull-up-weerstand en een spanning van minder dan 5 volt die op een van deze pinnen wordt toegepast, wordt nog steeds beschouwd als 5 volt (logische één).

De analoge pinnen zijn ingangen en hebben geen pull-up weerstanden. Ze meten de spanning die erop wordt toegepast en retourneren een waarde tussen 0 en 1024 wanneer ze met de functie worden gebruikt. Deze pinnen meten spanning met een nauwkeurigheid van 0,005 V.

PWM Arduino Mega

Als je goed naar het bord kijkt, zie je een tildepictogram (~) naast enkele digitale pinnen. Dit pictogram betekent dat deze pin kan worden gebruikt als een PWM-uitgang. Sommige arduino-borden hebben dit pictogram niet omdat fabrikanten niet altijd een plaats vinden voor dit symbool op het bord. De Arduino Mega heeft 15 PWM pinnen, dit zijn digitale pinnen 2 t/m 13 en 44 t/m 46. Om PWM te gebruiken heeft Arduino een speciale functie.

Andere pinnen:

  • Serieel: 0 (rx) en 1 (tx), Serieel1: 19 (rx) 18 (tx), Serieel2: 17 (rx) en 16 (tx), Serieel3: 15 (rx) en 14 (tx) worden gebruikt voor gegevens overdracht via seriële interface.
  • Pinnen 53 (SS), 51 (MOSI), 50 (MISO), 52 (SCK) zijn ontworpen voor SPI-communicatie.
  • Ook op pin 13 is er een LED ingebouwd in het bord.
  • 20 (SDA) en 21 (SCL) kunnen worden gebruikt om via de I2C-bus met andere apparaten te communiceren. U kunt meer lezen over deze interface op Wikipedia. De Arduino IDE heeft een ingebouwde "wire.h"-bibliotheek voor eenvoudiger I2C-werk.
  • Externe onderbrekingen: pennen 2 (onderbreking 0), 3 (onderbreking 1), 18 (onderbreking 5), 19 (onderbreking 4), 20 (onderbreking 3) en 21 (onderbreking 2). Deze pinnen kunnen worden gebruikt als onderbrekingsbronnen voor verschillende omstandigheden: laag, stijgend, dalend of veranderend. Zie de functie voor meer informatie.
  • AREF. Referentiespanning voor analoge ingangen. Kan worden gebruikt door de functie.
  • resetten. Vorming van een laag niveau (LOW) op deze pin zal de microcontroller resetten. Deze pin wordt meestal gebruikt om de resetknop op uitbreidingskaarten te bedienen.

fysieke eigenschappen

Arduino Mega heeft de volgende afmetingen: lengte 102 mm en breedte 54 mm. Arduino Mega weegt ongeveer 45 gram. Het bord heeft 4 gaten voor de mogelijkheid om het op het oppervlak te bevestigen. De afstand tussen de pinnen is 2,5 mm, met uitzondering van pinnen 7 en 8. Er zit 4 mm tussen.

schakelschema