Das ist meine erste Schaltung überhaupt mit nem Mikroprozessor, wollte hier mal fragen ob das so funktionieren könnte. Man soll die Temp messen können, un dann 2 Lüfter reglen können, eigentlich ganz simpel, wobei ich mir nicht sicher bin ob das so hinhaut mit der Spannungsregelung via Mosfets.
Avcc sollte über Drosselspule an Vcc angeschlossen sein und Agnd muss an GND
die FETs funktionieren so nicht. die müssen mit Source an GND, Last zwischen Drain und 12V.
Soll das 1 Wire- Interface für die 2 Sensoren jeweils einzeln in Software nachgebildet werden? Wenn möglich hänge diese doch nicht an AD- Wanlder- Eingänge. Die MosFets müssen mit Ihrem Source an GND, Drain an die Last und Last direkt an Plus. Damit wird später aber nicht die Spannung geregelt sondern sie wird geschaltet. Wenn das ganze gepulst werden soll müssen die MosFets an PWM- Ausgänge und Du musst schauen ob Du vielleicht Treiber vorsehen musst. Lies Dir doch bitte erstmal Grundlagen an.
Und noch so nebenbei: Bildformate bei Gelegenheit mal durchlesen und zu verstehen versuchen. Das Bild wird nicht besser, wenn du es erstmal als JPG speicherst und anschliessend in PNG konvertierst.
ok vielleicht kann man es nich so gut auf dem bild erkennen, die 1wire sensoren hängen an nem digitalen eingang, und die mosfets hängen an nem analogen pin. die leitungen kreuzen sich nur , deshalb erkennt man es vielleicht nicht so gut)
Ah okay sorry, mit den Sensoren hast Du recht. Aber warum hängen die MosFets denn an analogen Eingängen? Wie gesagt damit kannst Du nur schalten und solang man noch genug digitales frei hat würde ich nicht auf die analogen springen, wer weiss was Du da noch verbauen willst.
mh wollte eigentlich die Spannung regeln, also per pwm, nicht nur an/aus, und als Spannungsreferenz wollte ich die interne verwenden, dann brauch ich doch AVCC und AVGND nicht oder? oder einfach per Kondensator an masse?
so hab das mal mit den posfets abgeändert, stimmt dies dann so?
Avcc ist einfach die versorgungsspannung für die Logik aller Ports, an denen auch der AD- Wandler zur Verfügung gestellt werden kann. Muss also in jedem Fall angeschlossen werden. Deine MosFets sollten an die Pins PB1 und PB2, da dort die 2- Kanal- hardware- PWM zur Verfügung steht.
Freilaufdioden an den MOSFETs wären von vorteil ;) PullUp Widerstände(10k) an den MOSFET's fehlen (damit diese immer einen definierten Pegel haben) sowie, je nach MOSFET Typ, Widerstände an das Gate. [Edit] fürs PWM solltest du die MOSFET's an einem PWM Ausgang anschließen(PB1, PB2) um in den Genuss von Hardware-PWM zu kommen...
Naja, ich würde sie Entladewiderstände nennen und zwischen Gate und Source setzen. Vorwiderstand für das gate ist wahrlich noch notwendig. Freilaufdioden an den MosFets würde ich persönlich auch setzen, ist aber wohl nicht unbedingt notwendig (da Body- Diode).
Edit2 Poste bitte den ganzen Schaltplan. Wo gehen PC2 - PC5 hin? Soll an den X-Con ein Display hin? Wenn ja (Bei HD Controllern) komplett falsch beschaltet.
kann mir jemand sagen warum ich diese 10k widerstände am Gate unbedingt brauche? hab sonst mal alles abgeändert und unnötige entfernt
Also der Widerstand zwischen dem Controller und dem FET sollte doch etwas geringer sein, so zwischen 10 und 100 Ohm etwa. der 10k Widerstand soll direkt an den FET zwischen Gate und Source um die Ladung bei Low-Pegel schneller abbauen zu können. (FET-Gate wirkt wie Kondensator)
10 kOhm ist evt. etwas viel wenn du PWM nutzen möchtest. 200 Ohm reichen völllig aus. 10 kOhm zwischen Gate und Source sind schon nicht verkehrt damit der FET sich schnell entladen kann wenn der AVR abgeschaltet wird oder in den Reset geht.
Wenn Du nicht darauf angewiesen bist, die Sensoren mit Parasite-Power zu betreiben, ist es besser, ihnen eine separate Leitung für die Versorgungsspannung zu spendieren. Das dürfte die Übertragung robuster machen. Außerdem kannst Du die beiden Datenleitungen auf einen Port legen.
Der 10K zwischen Gate und Source verhindert ein Schalten des FET wenn sich der Controllerausgang im hochohmigen Zustand befindet (z.B. während der Programmierung). Axel
Bin nich auf alle Pins angewiesen, ums einfacher zu haben beim einlesen hab ich halt gedacht dann kann man auch 2 pins dafür verschwenden. mh ist es nicht 2 leiter mässige Spannungsversorgung? pin 1 GND 2 Mega8 + 4,7k an 5V 3 +5V finde im net immernur sowas....
Bonze schrieb: > ums einfacher zu haben beim einlesen hab ich halt gedacht dann kann man > auch 2 pins dafür verschwenden. Ist wohl Geschmackssache. Soweit ich mich erinnere, kann man bei nur einem Device am "Bus" ein vereinfachtes Protokoll verwenden, braucht den Code aber dann zweimal oder muß ihn so schreiben, daß der Pin konfigurierbar ist. Andererseits kann man bei Verwendung des vollen Protokolls und nur eines Pins später leichter noch Sensoren nachrüsten. > mh ist es nicht 2 leiter mässige Spannungsversorgung? Doch, paßt so. Sorry, ich hatte das +5V-Symbol an den Versorgungs-Pins der Sensoren übersehen und dachte, Du versorgst sie aus der Datenleitung.
... ich nehme mal stark an, dass "LÜFTER" ein induktives Bauteil sein wird. Wo ist der Freilaufzweig dafür? Die Freilaufdioden, die du so schön parallel zu den Mosfets geschaltet hast, würde ich mal an die Klemmen legen (K7-1 K3-2), so dass der Strom, der durch den Lüfter fließt, nach dem Abschalten des Mosfets durch diese Diode weiterfließen kann. Ansonsten lebt der Mosfet nicht lange. Werner
ja soll ein 12v PC lüfter werden sogesehen bzw mehrere.. Hab jetzt die Dioden von K3-2 nach K7-1 und K3-1 nach K7-2 eingezeichnet. und mir überlegt, nachdem ich die Bascom-Beschreibung angeschaut hab, dass ich wohl doch die Sensoren an 1 Pin anschließen werde. Wenn ich euch erzähle das ich eigentlich mehr über die Bauteile wissen müsste, weil ich Elektroniker für Automatisierungstechnik lerne (3LJ), jedoch wird bei uns das Thema Elektronik (Bauteile) nicht behandelt. Ich hoff ich werd jetzt nich gesteinigt. :D
hab mal anhand meiner Formelsammlung versucht nen Pi reinzuprogrammieren, sieht bis jetzt so aus Declare Function Piregler(byval Id As Byte , Temp As Single) As Integer 'deklarieren der funktion Function Piregler() Local Dim Regeldifferenz As Single 'Regeldifferenz Local Dim Sollwert As Single 'Sollwert Local Dim Istwert As Single 'Istwert Local Dim Pverstellung As Single Local Dim Iverstellung As Single Local Dim Tmp_ianteil As Single Local Dim Tmp_panteil As Single Local Dim Regelgroesse As Single Local Dim Kri As Byte Local Dim Krp As Byte Local Dim T As Byte Sollwert = Temp T = 1 Kri = 1 Krp = 4 Sollwert = 30 'Sollwert auf 30°C setzen Regeldifferenz = Istwert - Sollwert 'Regeldifferenz=Sollwert-Ist Temp 'P-Anteil Pverstellung = Krp * Regeldifferenz ' regeldiff 'I Anteil Tmp_ianteil = Regeldifferenz * Kri Iverstellung = Tmp_anteil / T 'Ergebnis Regelgroesse = Pverstellung + Iverstellung Piregler = Ausgabe End Function bin ich auf dem richtigen Weg? die umwandlung einer Formel in code ist nich ganz so einfach finde ich ,.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.