INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Gelöst: Ethernet Shield, SPI, Schieberegister, Relais - irgendwie klappt's nicht
26.02.2014, 11:47 (Dieser Beitrag wurde zuletzt bearbeitet: 28.02.2014 19:23 von Thorsten Pferdekämper.)
Beitrag #1
Gelöst: Ethernet Shield, SPI, Schieberegister, Relais - irgendwie klappt's nicht
Hi,

ich bastle mir momentan ein bisschen Hardware für meine Heizungssteuerung zusammen. Auf dem Breadboard haben die einzelnen Komponenten funktioniert, aber nachdem ich alles zusammengesteckt und -gelötet habe, funktioniert die eine Hälfte gar nicht und der Rest zum Teil irgendwie wackelig.
Hier ist mein grober Aufbau:
1. Arduino Uno mit Ethernet Shield (beide sind keine Originale, sondern billig-Clones)
2. Ein Schieberegister TPIC6B595. Der serielle Eingang kommt von D6,D7,D8. Die Daten werden per shiftOut() draufgeschoben. An den Ausgängen hängen 6 Reed-Relais und ein "großes" Relais.
3. Zwei Digitalpotis (MCP 4251). Die Dinger hängen gemeinsam mit dem Etherent Shield am normalen SPI-Bus. CS-Pins sind D2 und D3.
4. Die Analogausgänge A0 bis A3 hängen über Spannungsteiler an Temperaturfühlern, die einen Widerstandswert abhängig von der Temperatur liefern.
5. A0 hängt an einem TMP36-Temperaturfühler.

Folgendes läuft schief:
1. Was am Schieberegister hängt scheint manchmal zufällig zu schalten. Außerdem klappert das Relais, wenn ich einen neuen Sketch hochlade. Das passiert nicht beim Start oder wenn ich setup() "manuell" aufrufe, sondern anscheinend beim Beenden des laufenden Sketch bevor das eigentliche hochladen beginnt. Dasselbe passiert, wenn ich den seriellen Monitor starte.
2. Die Digitalpotis liefern nicht die Werte zurück, die ich reinschreibe. Das ganze unterliegt nicht dem Zufall, sondern (z.B.) immer wenn ich "100" reinschreibe und dann einen read auf das Teil mache, kommt "67" zurück.

So, das war's jetzt erst einmal. Ich weiß, dass da viel Glaskugel-Lesen notwendig ist, um hier wirklich zielgerichtet helfen zu können. Vielleicht kann mir aber jemand einen Tipp geben, wonach ich suchen könnte oder was an obiger "Architektur" erkennbar schlecht ist. Ich bin für jegliche Anregung dankbar.

Danke&Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
27.02.2014, 00:04
Beitrag #2
RE: Ethernet Shield, SPI, Schieberegister, Relais - irgendwie klappt's nicht
Hi,
ich habe jetzt ein bisschen geforscht:

Die Stromversorgung ist es schonmal nicht. Ich verwende nämlich den 5V-Pin, was ja angeblich ganz böse ist. Das funktioniert aber, bzw. es macht keinen Unterschied wenn ich den offiziellen Eingang benutze.

Dann habe ich mal das Ethernet-Shield runtergenommen und den Sketch von HTTP auf Serial umgeschrieben. Das sah dann schonmal besser aus. Jetzt das Ethernet-Shield wieder drauf, aber den Sketch ohne Ethernet-Library. Ich hatte damit zumindest das Gefühl, dass die Wackelkontakte (?) wieder da sind.
...also Arduino und Shield gegen Originale ausgetauscht. Jetzt hat es erstmal funktioniert (das mit den Digitalpotis), aber noch nicht wirklich perfekt.

Ich habe den Eindruck, dass das mit Ethernet-Shield und SPI auf andere Geräte immer noch nicht so ganz funktioniert. Hat damit jemand Erfahrungen?

Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
27.02.2014, 22:17
Beitrag #3
RE: Ethernet Shield, SPI, Schieberegister, Relais - irgendwie klappt's nicht
Hi,
so, weitere Forschungen. Ich habe jetzt meinen Sketch ganz auf Serial umgeschrieben. Auch das "echte" Ethernet-Shield (R3) zeigt noch Probleme, auch wenn ich es gar nicht verwende (Ethenet Library ist nicht includiert.)
Wenn ich das Shield ganz rausnehme, dann klappt das Ansteuern der Digitalpotis per SPI ohne Probleme. Ich habe die Dinger jetzt richtig gequält (random()...), es funktioniert perfekt.
Ich dachte, dass die neueren Ethernet-Shields das SPI-Problem nicht mehr haben. Hat jemand eine Idee?
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
28.02.2014, 19:29
Beitrag #4
RE: Gelöst: Ethernet Shield, SPI, Schieberegister, Relais - irgendwie klappt's nicht
Jetzt habe ich mal was über Wellenwiderstand und so gelesen. Also nochmal zurück ans Breadboard und verschiedene Verkabelungen ausprobiert. Ich denke, ich hab's jetzt. Vielleicht nützt es ja jemandem:

Die Clock-Leitung der Digitalpotis (SPI, D13 am Uno) habe ich jetzt kürzer gemacht und direkt zu D13 geführt. Dann noch eine Masseleitung jeweils direkt an den GND-Anschluss der beiden Digitalpotis angeschlossen. Aus den drei Leitungen (D13, 2xGND) habe ich ein kleines Zöpfchen geflochten ("verdrillt") und die beiden GNDs an den GND-Pin direkt neben D13 angeschlossen.
Die Dinger arbeiten jetzt seit einer Stunde brav mein Testprogram ohne Fehler ab. Ich konnte sogar sämtliche delays rausnehmen.

Jetzt zum Schieberegister: Anscheinend war das Problem, dass beim Einschalten bzw. generell beim Reset die Leitungen "offen" sind. Dann gibt's durch meine lustige Verkabelung wahrscheinlich diverse Einkopplungen und schon klappern die Relais.
Ein kleiner 10kOhm Widerstand zwischen Latch (Register-Clock) und GND hat's gerichtet.

Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Parallel Load Serial Out Schieberegister Laura 3 42 07.12.2016 14:38
Letzter Beitrag: ardu_arne
  USB-Gerät wird nicht erkannt kpc 1 58 06.12.2016 09:22
Letzter Beitrag: hotsystems
  Bluetooth-Steuerung mit elegoo uno funktioniert nicht Matthias_Arduino 0 154 01.11.2016 19:47
Letzter Beitrag: Matthias_Arduino
  Schrittmotor ruckelt beim Start und im laufenden Betrieb - Arduino+Motor Shield grt35a 3 276 21.09.2016 06:56
Letzter Beitrag: Bitklopfer
  Solid State Relais Zünden. Impuls vs Dauerfeuer BennIY 6 228 18.09.2016 23:44
Letzter Beitrag: BennIY
  Inrush Relais am Arduino MKnet83 1 207 07.09.2016 16:11
Letzter Beitrag: ardu_arne
  Pin 5 an Pro Micro funktioniert nicht scritch 1 170 07.09.2016 13:54
Letzter Beitrag: ardu_arne
  Steuerung eines Schrittmotor und eines Lüfters auf einem Shield phischmi 7 282 18.08.2016 20:58
Letzter Beitrag: phischmi
  Avr NetIO als Arduino mit Ethernet-Shield amithlon 2 534 18.08.2016 17:42
Letzter Beitrag: amithlon
  Nema 17 Schrittmotor läuft an a4988 nicht fagus 9 585 04.08.2016 20:12
Letzter Beitrag: fagus

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste