Hi,
durch den Voltcraft CO20 Sensor ist die Idee gewachsen, meine "normalen" Temperatur/Luftfeuchtigkeitssensoren Sensoren im Haus durch 1wire mit Luftgütemessung zu ersetzen
Ich bin nur unschlüssig bzgl des Luftgütesensors. Welchen sollte ich nehmen? Das Verhalten sollte analog dem Voltcraft CO20 sein: Messung schlechte Raumluft. CO2 ist darin enthalten? Es sollte damit auch möglich sein die Konzentration der "Abgase" in der Garage und im Heizungskeller (Ölheizung) zu messen um damit eine Ventilation zu steuern.
MQ-135: Datenblatt (http://futurlec.com/Datasheet/Sensor/MQ-135.pdf)
TGS2600-B00: Datenblatt (http://files.voelkner.de/175000-199999/183304-da-01-en-GASSENSOR_FIGARO_TGS2600_B00.pdf)
Edit:
hier gehts zum Wiki Beitrag: http://www.fhemwiki.de/wiki/PanStamp_Innenraumsensor
hier gehts zu Bildern und Video: https://forum.fhem.de/index.php/topic,20956.msg155191.html#msg155191
Hi,
würde mich auch interessieren!
Durch meinen derzeitigen Umbau (abhängen der Decken für Einbauspots) sind bereits 1/4 der Räume meines Hauses, mit 1Wire Temperatur und Luftfeuchtesensoren, in Verbindung mit einem DS2450 und HIH5030, erschlossen und der Rest kommt peu à peu hinzu, die Luftgüte interessiert mich daher noch für die Messung in den wirklichen "Wohnräumen".
Greetz
Eldrik
Hi,
ich habe jetzt noch einige Berichte im Netz gefunden wo der TGS 2602 in Verbindung mit 1Wire genutzt wird, interessant ist wohl auch wieviel Strom der jeweilige Sensor zieht.
Also der TGS2600 zieht ca 42mA +/- 4mA
Ich hab erstmal das Bauteil im Target3001 aufgebaut, das gabs da noch nicht :(
Ich werde die Versorgung auch aus der 12V Schiene vorsehen.... Irgendwo hatte UweH auch mal einen Schaltplan gepostet wo er 5V-Bauelemente aus der 12V schiene versorgt...
Mein erster Entwurf sieht so aus.
Versorgung über die 12V schiene. Wer einen 1wire Hub von eservice-online hat, für den ist das kein Problem.
Mittels Jumper kann man aber auswählen ob 5V Versorgung oder 12V Versorgung ;)
Falls 12V Versogung sehe ich einen "DC/DC-Wandler 1A Tsr 1-2450" vor. Ich versuche auch parallel einen China-StepDownWandler zu benutzen. Dazu muss ich aber den Eigenverbrauch mal durchmessen.
Nur der TGS2600 alleine zieht schon ca 50mA. Und der 1WireHub kann auf der 5V Schiene 200mA bzw auf der 12V Schiene 300mA.
Ich habe mir mal den TGS2600, den TSR-1-2450 und den LDR bei Völkner bestellt und werde ein bissl testen...
Ich bin auch am überlegen ob ich statt 1wire-Chip einen Panstamp benutze und damit Funkübertragung nutze. Trotzdem muss ich mindestens eine Stromversorgung vorziehen. Eine reine Batterieversorgung wird nicht funktionieren... :(
Hey Tobias,
Über Berichte zu den verschiedenen Luftgütesensoren würde ich mich freuen, ich hab jeweils einzelne Schaltnetzteile mit 5V 5A und 12V 4,5A die sollten eigentlich einige Sensoren versorgen dürfen :)
10 Luftgütesensoren würde ich schon gern einsetzen wollen...
Gruß
Jens
Werde definitv das Ganze mit einem Panstamp aufbauen. Damit habe ich mehr Möglichkeiten:
Folgendes soll abgedeckt werden:
- Temperatur/Luftfeuchte: DHT22 (1x Digital)
- Barometer: BMP085 (I2C)
- Luftqualität: TGS2600 (1x Analog)
- Umgebungshelligkeit: TEMT6000 (1x Analog)
- 1x RGB-LED zur Anzeige der Luftqualität (grün/gelb/rot) (3x digitalPins)
- SPI-based LCD zur Anzeige der gemessenen Werte
Die Hintergrundbeleuchtung soll sich automatisch der gemessenen Umgebungshelligkeit anpassen.
Auf dem LCD soll selbstständig Temperatur/Luftfeuchte und Luftqualität ausgegeben werden.
Die LEDs sollen selbstständig bei festen Schwellwerten des TGS2600 angesteuert werden.
Funkübertragung der:
- relativen Luftfeuchte in %rH
- Temperatur in °C
- Luftdruck im hPa
- Luftqualität in ppm
- Helligkeit
Das Setzen von Texten auf das Display ist in Phase1 noch nicht nötig.
Das Sendeintervall soll dynamisch bzw änderbar durch Registeränderung sein.
Justme1968 ist so freundlich sich der Panstamp-Programmierung anzunehmen.
Wir brauchen allerdings noch Hardwarekundige die mit Ihrem Hardwarewissen den Schaltplan kontrollieren und verbessern.
Das SPI-LCD fehlt noch. Andre liefert noch seinen Verdrahtungsplan seines SPI-LCDs nach.
ich bin grad in wien und das hotel internet ist bescheiden ...
ohne garantie auf vollständigkeit (ich bin nicht der hardware spezialist :) ) ist mir beim überfliegen schon mal aufgefallen:
- ich glaube für den TGS2600 braucht es keinen level shifter. ein einfacher spannungsgeiler mit widerständen sollte reichen. es wird ja nur die ausgangsspannung mit einem analog pin gemessen. eventuell muss man sogar nur die sowieso vorhanden beiden widerstände etwas anpassen.
- du hast 3.3v/vcc an a0 gelegt. war das absicht?
- ich denke bei der rgb led fehlen die vorwiederstände bzw. ich weiss nicht ob die überhaupt so passt weil blau (und auch grün) eigentlich mehr als 3.3v brauchen.
- für die rgb led solltest du d5, d6 und d9 verwenden. das wäre dann zum rgb board kompatibel. d3 braucht einen timer der eventuell nicht frei ist (siehe auch hier: https://0cdf7099-a-3ce7cda5-s-sites.googlegroups.com/a/panstamp.com/panstamp/downloads/rgb-driver.pdf (https://0cdf7099-a-3ce7cda5-s-sites.googlegroups.com/a/panstamp.com/panstamp/downloads/rgb-driver.pdf))
- die pinbelegung für die beiden lcd suche ich noch raus und vergleiche sie mal. der unterschied sollte recht klein sein.
gruss
andre
3.3V liegt an A0 um die Betriebsspannung zu messen ;)
Das mit den LED Vorwiderständen hab ich schon geändert. An Pin1 liegt jetzt 56Ohm an (benötigt 2V). Die anderen laufen mit 3.3V
Ich fand den LevelShifter für den TGS2600 einfacher... Ich weiß nur nicht ob ein einfacher Spannungsteiler ausreichend ist - auch auf Langzeitsicht stabil ist... Falls mir jemand die Werte für den Teile gibt bau ich es gerne um...
Für die RGB kann ich auch 5,6,9 verwenden... Ich weiß nur noch nicht ob wir einen PWM für das Backlight des LCD´s brauchen...
Ich schau mir heute abend mal das rgb-Driver pdf an...
Edit: bei den LEDs hängt jeweils ein MOS_n dazwischen, leider ohne konkrete Bautleilangabe :( Habe auch nirgends gefunden (bis jetzt) inwieweit die einzelnen Pins belastbar sind. Kann ich da wirklich 20mA dranhängen?? Warscheinlich nicht, deswegen ja der Mosfet....
dann leg die 3.3v an a7. dann wäre es wieder kompatibel zu allen anderen panstamp boards.
das rgb board hat die mosfets weil das für stripes gedacht ist.
ich glaube laut datenblatt sind es 10ma pro bin bei 3.3v. je nach led und passendem vorwiederstand sollte das genug sein um eine led direkt dran zu hängen. die 20ma gelten glaube ich für 5v.
ich meine es sollte auf jeden fall ein widerstand an jeden pin um den strom zu begrenzen. vermutlich musst du eine andere led suchen. oder den pin nur zum schalten verwenden und die led an die 5v hängen.
aber wie gesagt ... was die hardware angeht sind andere besser.
Ich würde euch solche Sensoren aus der Hand reißen, solltet ihr sie bestückt zum Verkauf anbieten.
Grüße,
Markus
Da schließe ich mich Markus an und reiße gerne mit ;-)
LG,
Roland
Zitat von: Bubbles71 am 07 März 2014, 20:55:23
Da schließe ich mich Markus an und reiße gerne mit ;-)
Dito! ;-)
Gefällt mir gut die Idee!
Gruß
Marius
Sent from my iPad using Tapatalk HD
Hallo,
eine Anmerkung zu den Luftgütesensoren. Diese messen die Luftgüte über die Adsorption von Gasen auf der SnO2 Oberfläche des Sensors. Eine getrennte Erkennung der Gase ist damit nicht so einfach möglich. Um CO2 getrennt zu messen - um in den Räumen nicht müde zu werden, wenn man nicht lüftet - müssten man auf IR basierte Sensoren zurückgreifen. Diese messen dann über eine optische Strecke direkt die Konzentration an CO2.
Einen kleinen günstigen Sensor direkt für CO2 kenn ich aber jedoch leider nicht.
LG,
Roland
Ich habe schon einen CO2 Sensor gefunden. Kostet 80€, im chinaladen immerhin noch 20€. Ansonszen bin ich für Vorschläge mit konkreten Bauteilbezeichnungen offen.
Edit: Diesen hier: MD62 (http://www.conrad.de/ce/de/product/183311/COsub2sub-Gas-Sensor-MD62-Kohlendioxid-Halogenkohlenwasserstoffe-Erdgas-Autogas-LPG-L-x-B-x-H-18-x-10-x-14?ref=searchDetail)
Im ChinaLaden: MD62 (http://www.aliexpress.com/item/FREE-SHIPPING-NEW-The-heat-conduction-CO2-gas-sensor-MD62/1094283808.html)
Noch einer, braucht aber 6V, also würde ein Voltage StepUpRegulator benötigt werden (Schaltplan (http://www.picbasic.co.uk/forum/attachment.php?s=59a47529cd8b2c0b37b1f30512a591b3&attachmentid=2568&stc=1&d=1210174233)):
MG-811 (http://www.aliexpress.com/item/New-and-Original-CO2-sensor-Carbon-dioxide-sensor-MG811/1649112883.html)
Und noch einer für 5V:
TGS4161 (http://www.sos.sk/a_info/resource/c/figaro/tgs4161.pdf)
Der TGS4161 gefällt mir bis jetzt am besten...
Hallo,
mal so am Rande, vielleicht kann man das zusammenführen.
http://forum.fhem.de/index.php/topic,20620.0.html
Sollte für alle vieles vereinfachen. Die Funkmodule sind doch die gleichen wenn ich das richtig gelesen habe.
Nur so am Rand man muss die HW ja nciht für alles immer neu erfinden ;)
Nico
Danke für den Hinweis... Ich schau mir da ein bissl was von der Schaltung ab.
Bei mir ja noch ein Luftgütesensor und ggf noch ein CO2 Sensor drauf. Das sind die Hauptakteure!
Und damit das ganze auch ggf ohne FHEM nutzbar wird kommt obendrauf ein LCD...
Hab mal ein wenig weiter dran gearbeitet.
Hat keiner etwas an der Schaltung dran auszusetzen? Kann ich mir nicht vorstellen.....
Schaltplan mit SPI-Display aktualisiert...
Schaltplan aktualisiert
Dazugekommen ist i2c SRAM für das TFT-Display
Komplett geändert ist die Spannungsversorgung: Spannungsregler als Fertigbaustein TSR-1-2450 und ein Linearregler 5V->3.3V. Damit kann man das Modul mit einer ungeregelten Spannung zwischen 7-36V betreiben.
Hallo Tobias,
Ich antworte dir mal hier wenn das ok ist:
Die Werte für deine Spannungsteiler sehen ganz gut aus. Aber nimm, wie santalaus im anderen Tread schon sagte, größere Widerstandswerte. Faktor 10, oder 100.
Dann ist der Verlust hier kleiner.
R4 kannst du weglassen.
Mit dem I2C-Ram für den Framebuffer von mir, das war Quatsch.
SPI-RAM ist nicht wirklich verbreitet, und daher hast du wohl nur den 256Byte-Ram gefunden was aber recht wenig ist.
Ich meinte natürlich SPI-RAM. Das hatte ich mit EEprom verwechselt. Die gibt es nämlich auch mit I2C-Schnittstelle und genügend Speicher.
Ich habe mal in die technischen Daten für dein Display geschaut.
Vermutlich brauchst du dafür gar keinen externen RAM, weil das Display selber schon einen hat.
"ST7735R controller with built in pixel-addressable video RAM buffer"
Gruß
Dirk
ich hatte für tobias inzwischen ein 16k i2c ran baustein gefunden. d.h. die gibt es schon. der vorteil gegenüber spi wäre halt das man nicht dauernd zwischen display und ram umschalten braucht. ich kann aber nicht abschätzen ob und wie viel das an geschwindigkeit aus macht.
für das e-paper display habe ich einen 32k spi sram baustein verwendet. das geht natürlich genau so.
aber du hast recht bei dem display ist zumindest dafür kein sram nötig. um messwerte aufzuheben und durchzuscrollen wäre es aber ganz nett. alternativ flash statt sram. dann überlebt es auch einen neustart. dann müsste man nur schauen ob es von den schreib zyklen hin kommt.
gruss
andre
Zitatich hatte für tobias inzwischen ein 16k i2c ran baustein gefunden
Den hatte er aber nicht im Schaltplan verbaut? Laut Datenblatt war das ein 256x8 Bit RAM. Oder hab ich mich da verguckt?
Zitatder vorteil gegenüber spi wäre halt das man nicht dauernd zwischen display und ram umschalten braucht.
Das stimmt.
Zitatfür das e-paper display habe ich einen 32k spi sram baustein verwendet. das geht natürlich genau so.
Was für einen hattest du da denn?
Das E-Paper finde ich nach wie vor total interessant. Vor allem als Batteriebetriebenes Status-Display.
Zitatalternativ flash statt sram. dann überlebt es auch einen neustart. dann müsste man nur schauen ob es von den schreib zyklen hin kommt.
Kommt drauf an wie oft man was scheibt. Bei angenommenen 100.000 Zyklen und einer Aktualisierung pro Minute (z.B. für die Uhrzeit) ist nach ~ 69 Tagen Schluss. Das ist gar nicht mal so viel.
Gruß
Dirk
auf dem schaltplan ist der 256x8bit baustein. mir war am anfang garnicht aufgefallen das der so klein ist. der macht natürlich wirklich keinen sinn. ich hatte dann vorhin den hier gefunden: http://www.digikey.de/product-detail/de/CY14MB256J1-SXI/CY14MB256J1-SXI-ND/3048609 (http://www.digikey.de/product-detail/de/CY14MB256J1-SXI/CY14MB256J1-SXI-ND/3048609) aber noch nicht genauer nachgeschaut. eben sehe ich das das sogar nvsram ist. das klingt interessant.
für das e-paper display habe ich einen 23k256 verwendet.
für den batterie betrieb ist das e-paper display absolut genial. da ich leider gerade nicht zum weiterbauen komme habe ich es seit 6 wochen ohne spannung auf dem schreibtisch stehen und es schaut noch so aus wie direkt nach dem scheiben. super kontrast. der einzige nachteil ist der recht langsame refresh und das es nicht pixel adressierbar ist. und natürlich das es keine beleuchtung hat. also nur am tag funktioniert. aber für den batterie betrieb perfekt. ich hoffe ich komme wieder dazu da noch weiter zu machen. gerade auch mit den neuen panstamps die etwas mehr ram haben.
zum flash hast du recht. auch wenn die rechnung glaube ich etwas besser auschaut da nicht jede minute der komplette flash geschrieben wird und man dann die zeit zumindest mit der anzahl der bänke multiplizieren kann ist das wirklich nicht viel. aber die nvsram geschichte wäre hier vielleicht auch eine alternative.
gruss
andre
Zitat... auch wenn die rechnung glaube ich etwas besser auschaut da nicht jede minute der komplette flash geschrieben wird und man dann die zeit zumindest mit der anzahl der bänke multiplizieren kann ist das wirklich nicht viel. aber die nvsram geschichte wäre hier vielleicht auch eine alternative.
Die "einfachen" EEProms haben doch gar kein Speichermanagement so wie SD-Karten? Dann schreibt man mit dem AVR doch immer auf der selben Zelle rum wenn die Adresse gleich ist? Klar, die muss man nicht jedes mal beschreiben wenn der passende Wert schon drinn steht.
wenn man den flash nimmt um historische werte zu speichern schreibt man ja eben nicht immer auf die gleiche zelle.
aber eine sd karte dazu zu verwenden ist eh die idee. das display hat ja einen sd kard slot. ich muss nur mal schauen ob man das von der software seite so schlank bekommt das es zusammen mit allem anderen noch passt.
Ich habe mal dem Ganzen einen 1024Kb NVSRAM Baustein gegönnt....
Die einzelne RGB-LED ist rausgeflogen.
Stattdessen ist ein RotaryEncoder mit RGB-Stift (http://www.exp-tech.de/Zubehoer/Taste-Schalter/Rotary-Encoder---Illuminated--RGB-.html) reingekommen. Der Taster zur Kalibrierung der GasSensoren musste auch weichen. Die Kalibrierung kann man aber auch mittels Software lösen. zb. TFT->Menü->PushButton oder durch ein Fhem Set-Kommando
Weiterhin habe ich ein ISP-Header mit integriert.
Jetzt ist die Grenze erreicht. Kein Pin mehr frei!!!
ich habe jetzt fast alle Teile zusammen, die Grundkomponenten bekommt JustMe1968 nächste Woche.
Bei der PLatine bin ich noch am layouten. Gerade die TGS Sensoren will ich aber noch vorher auf dem Breadboard testen...
Ich unterhalte mich nochmal mit mir selbst...
Nach 2 Wochen habe ich das layouten endlich fertig. Bitte um Draufsicht von LayoutKundigen... Der Autorouter hat echt miserable Ergebnisse geliefert... Manuell hat es halt etwas länger gedauert ;)
Hallo Tobias,
damit Du Dich nicht mit Dir selber unterhalten mußt:
Ich habe mir mal das Layout grob angeschaut (vermutlich fehlt mir das ein oder andere Datenblatt, um die Funktion in letzter Konsequenz zu verstehen), aber folgende Punkte sind mir aufgefallen:
- IC 5 Pin 4 würde ich nicht schräg nach außen weg, sondern entweder innen am Pin oder außen am Pin
- IC5 Pin: wenn Durchkontaktierung, dann nicht am IC Pin sondern außerhalb, beim Löten mit der Maschine läuft Dir sonst das Lot weg (Handlötung eher kein Problem)
- neben R5 blau: würde ich nicht mit 45 Grad, sonder mit 90 Grad Winkel layouten
- unter dem Panstamp (?), rot: die Leitung unten quer ist ziemlich weit außen am Rand, wenn es geht, ein bisschen weiter nach Innen (Fräskante)
- dito für blaue Leitung am rechten Platinenrand
- rechts, CS Pin 2 würde ich nach unten weg, wie bei Pin 1
- ich habe den Eindruck, dass nicht alle Bauteilebezeichnungen auf demselben Layer sind (unter Panstamp C? grün (kann ich im jpg nicht lesen)
- für D2 fehlt mir eine Erkennung, wo + ist (oder die Abflachung ist im jpg nicht zu erkennen 8))
- beim Umweltsensor fiel mir auf, dass das SO8 Pad des DS2450 etwas kurz ist, da hat fast kein Kupfer mehr unter dem Bauteilpin hervorgeschaut (geht für's manuelle Löten, würde aber bei automatischer optischer Inspektion Probleme machen), ggf. noch mal die Bibliotheken gegen die Zeichnungen im Datenblatt überprüfen
Schaltplan:
- Der Reset Taster braucht kein R/C Glied, aber bei anderen Tastern für Funktionen würde ich das einbauen.
- Ich persönlich würde die Massepins immer nach unten zeichnen, dann wird der Schaltplan m.E. leichter lesbar.
Generell versuche ich dem Autorouter zu vermeiden, der macht meistsn nur Murks.
Ich hoffe, das hilft Dir weiter :)
Gruß Peter
Hi Peter,
ich habe aus der ersten Charge mit dem Umweltsensor gelernt ;)... Ab der 2ten Change mache ich grundsätzlich die Pads von SMD-Bauteilen länger. Bei der neuen Change des Umweltsensors,LED-Platine, Temp/LuftfeuchtePlatine, 1wire-ETHPlatine ist dem schon so ;) Habe ich hier natürlich auch schon berücksichtigt.
Bis auf den NVSRAM Baustein sind alle Bauteile auf demselben Layer, nur dieser ist unter dem Panstamp, deshalb ist die Bezeichnung auch unten.
Die Widerstände und Kondensatoren sind alle SMD, aber relative Große SMD´s die man als Normalo mit ruhiger Hand auch noch löten kann.
Die anderen Hinweise werde ich heute noch durchgehen.... Kopfzerbrechen macht mir nur die Anbindung des RotaryEncoders zum vorgesehenen Pinheader...
Etwas unsicher bin ich mir beim TGS4261. Ich habe den Spannungsteiler erstmal ausgelassen, ev. bekommt man das so hin das der TLC eine maximale Ausgangsspannung von 3.3V bringt? Dann kann dieser direkt an den Panstamp ran. Der TGS4161 ist noch von China zu mir unterwegs, deswegen kann ich noch nicht testen. Laut Datenblatt kann der TLC ab 3V. Ev. reicht es schon diesen mit den 3.3V zu betreiben?
Der TGS2600 habe ich mit 10k vorgesehen, wenn ich richtig liege bringt es so zwischen 0.5V und 2,5V. Der TGS2600 variiert lt. Datenblatt zwischen 10k und 90k je nach VOC. Auf dem Breadboard läuft er seit gestern bei mir an einem DS2438 und bringt im Durchschnitt 1.3V bei RL=10K
Hier bräuchte ich bei beiden TGS noch etwas Hilfe.
Edit: folgende Hinweise habe ich nicht verstanden oder nicht gefunden:
Zitat- IC 5 Pin 4 würde ich nicht schräg nach außen weg, sondern entweder innen am Pin oder außen am Pin
- rechts, CS Pin 2 würde ich nach unten weg, wie bei Pin 1
Der ResetDruckschalter hat doch kein R/C-Glied?? Nur der RotaryDecoder hat 3. Jeweils einen PullUp mit 10K sowie 100nF nach GND. Laut Datenblatt wird noch jeweils ein 10K (R8/R4) für die Rechts/LinksDrehung zum ArduinoPin benötigt
ZitatDer Reset Taster braucht kein R/C Glied, aber bei anderen Tastern für Funktionen würde ich das einbauen.
Edit: Habe nochmal eine virtuelle Platinenansicht hier (http://forum.fhem.de/index.php/topic,20956.msg152738.html#msg152738)eingestellt.
Hallo Tobias,
ZitatDer ResetDruckschalter hat doch kein R/C-Glied?
Stimmt. Da war aber der Kopf schneller als die Finger: ich wollte anmerken, dass ich bei einem Taster ein R/C Glied einbauen würde. Danach habe ich gemerkt, dass es sich um einen Reset Taster handelt und der das ja wirklich nicht braucht.
IC2 Pin 5 bzw. Duko siehe Anhang, himmelblaue Pfeile.
Der CS müsste S3 heißen, siehe Anhang.
TGS2600Ich befürchte, da fehlt der Widerstand Rs zwischen 2 und 3 (siehe Datenblatt) und ich nehme an, dass R18 und R22 ein Spannungsteiler 5 V/3,3 V darstellt. Da müsstest Du erst den RS aus dem (gewählten) Gesamtwiderstand RL nach der Formel im Datenblatt berechnen und dann den Spannungsteiler daraus ableiten (siehe Anhang). Ich würde es auch etwas "lesbarer" zeichnen (siehe Anhang).
TGS4161Den TGS4161 habe ich auf die Schnelle nicht verstanden,
aber die zwei OPs sind glaube ich ok, da kann man ggf. ja noch die Widerstände variieren. Ich hatte auch den falschen Schaltplan. Mir ist die Formel delta EMV=EMV1 - EMF2 nicht klar. Wenn das wirklich so ist, dass bei 350 ppm die Ausgangsspannung Null ist und bei (10000-350) ppm die Ausgangsspannung 90 mV wirst Du mit dem Impedanzwandler vermutlich nicht viel Freude haben. Da würde ich auf jeden Fall einen Verstärker mit Faktor 30-35 dahinterklemmen, damit das Ausgangssignal messbar ist. Versorgungssannung ist 5 V.
Was mich wundert, dass Target nicht meckert, dass die Leitungen nicht angeschlossen sind (siehe Anhang).
Gruß Peter
Ich hab auch noch eine Frage: Sensor CO2 IC7 und IC8. Kannst Du mit einem dualen IC nicht Platz sparen? Offset Einstellungen hast Du ja nicht angeschlossen. Eventuell den TLC272?
Gruß Gerhard
Ahhh, vergiss mein Geschwafel. Ich hatte noch die Version 1. und nicht die Version ZWISCHEN Deinen Layouts.
Gruß Gerhard
Hi Peter,
ich habe das Gefühl du schaust auf eine alte Version des Schaltplanes. Die von dir Aufgeführten Widerstände gehören ganz woanders hin bzw sind schon nicht mehr existent....
Der letzte Stand ist auf seite 2, letzte Post.
Hier mal die relevanten Ausschnitte....
Wenn ich das Datenblatt des TGS4161 richtig verstanden habe, muss man ihn an frischer Luft kalibrieren, d.h. die Ausgangsspannung bei rfrischer Luft kann man mit 350ppm gleichsetzen. Dann kann man alle folgenden Ausgangsspannungen liniear auf ppm umrechnen. Der TLC271 ist ausdrücklich im Datenblatt empfohlen, incl Schaltplan.
Du arbeitest ohne Verstärkung. Ich habe einen Part gefunden, in dem von einer Verstärkung ausgegangen wird (bis max 3,3V)
Try using different GAIN values starting from 1 until you get 3.2999999 in the output, usually the GAIN value is between 7-10.
Sonst frikelt der Sensor bei kleinen Spannungen herum. Ich habe es auch so verstanden, daß die größte CO Konzentration den kleinsten Ausgangswert ergibt.
The greater the CO2 concentration is the lowest the output voltage will be
Also bei "normaler Konzentration" sollte man, deren Meinung nach, die Ausgangsspannung auf die knapp 3,3V setzen, damit sich eine vernünftige Auflösung ergibt.
Gruß Gerhard
Hi Gerhard,
betrachtest du den TLC271 nicht als Verstärkung? Ich habe diese schaltung aus dem Datenblatt übernommen. Dummerweise bringt der TLC bei 5V VCC bis zu 3.8V Output. Da der TLC ab 3V kann, werde ich ihn noch umhängen auf 3.3V VCC, damit ist auch der Output heruntergedrückt... Ich hoffe das ist die bessere alternative zum Spannungsteiler. Die Platine ist schon reichlich voll.
So wie der TLC geschaltet ist, wirkt er als Spannungsfolger. d.h. Eingangsspannung ist gleich Ausgangsspannung. Das macht man, wenn man eine hochohmige Quelle hat, die man nicht belasten will (darf). Der Ausgang ist dann entsprechend niederohmig zur weiteren Verwendung. In Deiner Version V1 hatte der erste Verstärker n+1 (36K / 10K) ist gleich Verstärkung 3,6+1 macht 4,6. Der zweite Verstärker hat dann (100K / 10K) Faktor 10. In Summe 46. Das kommt mit deren Vorschlägen schon hin.
Hi Gerhard,
du hast mich abgehängt... Bin auch kein Hardwareentwickler, ich adaptiere nur sehr viel aus fertigen Schaltungen.
Kanst du ev. mal aus deiner Sicht die korrekte Verschaltung des TGS aufzeichnen?
Hi Tobias,
das dauert einen Augenblick, ich muß mich da mal einlesen.
Zäumen wir das Pferd mal von hinten auf: Was braucht Dein Eingang am Panstamp in Volt oder Millivolt für eine vernünftige Anzeige? Und ich hab immer noch nicht ganz verstanden: Steigt die Ausgangsspannung bei steigender Konzentration oder fällt sie.
The greater the CO2 concentration is the lowest the output voltage will be
Zitat PeMue:
Wenn das wirklich so ist, dass bei 350 ppm die Ausgangsspannung Null ist und bei (10000-350) ppm die Ausgangsspannung 90 mV wirst Du mit dem Impedanzwandler vermutlich nicht viel Freude haben. Da würde ich auf jeden Fall einen Verstärker mit Faktor 30-35 dahinterklemmen, damit das Ausgangssignal messbar ist. Versorgungssannung ist 5 V.
an panstamp wäre es ideal den bereich von 0v bis 3.3v soweit wie möglich auszureizen.
gruss
andre
Laut Datenblatt....
Bei 350ppm gibt einen Output von ca 220mV. Bei 3500ppm einen Output von ca 180mV. Da DeltaEMF = EMF1-EMF2 ist und Delta EMF steigt bei höherer Konzentration, muss EMF2 also fallen. Alos korrekt: Bei Frischer Luft ist der Output am höchsten und fällt mit steigender Konzentration
Laut Datenblatt muss der Sensor kalibriert werden. Der höchste Output bei 350ppm ist 490mV. Ich denke, deswegen ist in Schaltung2 auch ein Poti zum Kalibrieren mit drin... Diesen habe ich aber auf der kleinen Platine nicht unterbringen können....
Zitat von: Tobias am 27 März 2014, 14:17:41
Bei 350 ppm gibt einen Output von ca 220mV. Bei 3500 ppm einen Output von ca 180mV.
Mir ist nicht ganz klar, wo diese Werte herkommen, das Diagramm zeigt m.E. etwas anderes.
Alles in Allem finde ich das Datenblatt schwer lesbar. Aber egal, was wir herausbekommen, ein 1:1 Verstärker reicht nicht, sondern es braucht den Impedanzwandler und einen nachfolgenden Verstärker mit Verstärkung (geschätzt) 20 - 40. Ich werde mir das Datenblatt heute Abend noch einmal zu Gemüte führen, vielleicht bekomme ich die Erleuchtung ;D
Gruß Peter
Es gibt eine Schaltung, bei der der TLC als nicht invertierenter Verstärker mit V= 3 bis 6 aufgebaut ist. So wie in der Version 1. Ich schau auch mal, ob ich den Link wieder finde. Es war bei der Suchmaschiene unter "Applikation TGS4161" und dann bei einer Firma mit F....
Hallo,
war das das (http://search.asee.org/search/fetch?url=file%3A%2F%2Flocalhost%2FE%3A%2Fsearch%2Fconference%2F19%2FAC%25202009Full737.pdf&index=conference_papers&space=129746797203605791716676178&type=application%2Fpdf&charset=)?
Gruß Peter
Nee, nicht ganz, da ist eine Verstärkung von 3 drin.
Noch einen: http://pdf1.alldatasheet.com/datasheet-pdf/view/111068/ETC1/FIC03272.html
auf Seite 8 ist der TLC gezeichnet mit den 2 Widerständen in Reihe 30K + 30K Poti.
Wenn der Sensor als größte Spannung 350mV bringt reicht eigentlich eine Verstärkung von 9 um auf 3.15V zu kommen.
Also 10K vorne und 82K in der Gegenkopplung. Macht 8,2 + 1.
Hallo zusammen,
ich glaube, ich habe es. Relevant ist folgender Bereich vom Datenblatt (http://www.google.de/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CC4QFjAA&url=http%3A%2F%2Fwww.netzmafia.de%2Fskripten%2Fhardware%2FDatenblaetter%2FGassensoren%2FTGS4161Dtl.pdf&ei=-H00U9r9N4HRtQb_2YGQCg&usg=AFQjCNEUyplldKfP6zwUNO2HBkcgEncwlA&bvm=bv.63808443,d.Yms&cad=rja)
Nullpunkt 350 ppm = 220 ... 490 mV
Steigung (3500-350) ppm = -72 ... -44 mV
sprich max. Spannung ist 490 mV, min. Spannung könnte bei 3500 ppm 148 mV sein. Wenn die Konzentration noch höher geht, dann geht die Spannung noch weiter runter.
Was heißt das?
Der Sensor kommt ohne Kalibrierung nicht aus (entweder im Panstamp oder im Modul).
Wir brauchen einen Verstärker mit etwa 6, damit die 490 mV auf etwa 3,3 V hochverstärkt werden, der Rest ist dann im unteren Bereich. Heißt aber auch, dass die Referenzspannung gut sein muss, sonst rauscht es zu arg.
Also in etwa diese Schaltung, die (30 + 30)k als (30 + 20)k ausführen, ggf. noch das C dazu packen und gut sollte es sein.
Gruß Peter
Edit: Ich glaube, den Figaros sollte man mal zeigen, wie man Datenblätter schreibt. Die relevanten Infos sind auf zwei unterschiedlichen Seiten verteilt >:(
Da stimme ich zu. Ein Widerstand von 51K und den C sollte reichen. In deren Schaltung zaubern sie aber auch noch mit der Temperaturkompensation.
Hm, da Tobias schon stöhnt wegen dem Platinenplatz würde ich des mit der analogen Temperaturkompensation lassen, <rotzfrech>obwohl ja eigentlich noch Platz auf der Platine ist </rotzfrech>. Ein Temperatursensor ist da und der Panstamp braucht ja schließlich auch was zum rechnen, also was soll's, oder?
Gruß PeMue
wenn die kompensation nicht nötig ist um im bereich 0-3.3v zu bleiben ist es kein problem das in software zu machen. wenn ich den wert aber nicht mehr richtig messen kann nützt alles hinterher rechnen nicht mehr.
der wertebereich sollte also so gewählt werden das er für jeweils eine minimal und maximal temperatur dir 0 bzw 3.3v liefert.
zumindest wenn der temperatureinfluss wirklich so groß ist.
gruss
andre
Hallo zusammen,
eigentlich hat Andre recht, wir haben ein Nutzsignal zwischen 264 und 462 mV, was ja nicht wirklich viel ist. Wenn man es richtig machen würde, müsste man danach den Offset (cariabel) nach unten schieben und nochmal mit Faktor 6-7 verstärken, das hieße dann aber noch mal mindestens ein OP. Mal sehen, was Tobias dazu sagt 8)
Was hat der Panstamp für einen AD-Wandler? 12 bit oder schon 16 bit?
Gruß PeMue
10 bit.
das ist ja wie auf dem türkischen Markt, erst 11, dann 10 bit :(
Schlecht, da haben wir im w.c. 264/3300*1023 = 81 Differenz zwischen min. und max. Rechnet man 1 bit Rauschen/Bitklappern bleibt noch etwa die Hälfte übrig --> reicht nicht.
Muss ich mir noch mal was überlegen, dauert aber ein bisschen (heute nischt und morgen nischt gleisch ;)). Vielleicht gibt es den OP auch als dual Variante, dann könnte Tobias etwas entspannter ans Layouten gehen 8).
Gruß PeMue
Das kommt der Schaltung auf Seite 8 des Links nahe. Da wird wohl mit Ausgang R90 ein Offset kreiert und mit den LM324vom Signal abgezogen. Aber ever how! Wir ;-) sollten es ohne versuchen und den Tempsensor und den Panstamp benutzen. Denn: Nur der Versuch macht kluch!
Gruß Gerhard
OK, ich war zu spät. Die duale Version ist glaube ich der TLC 272.
Hallo Gerhard,
die Frage ist, ab wann ist die Luft verschmutzt? Wenn das nur 1000 ppm sind, dann haben wir etwa 1/3 des (eh schon) mageren Bereichs. Daher würde ich den Versuch gar nicht erst starten.
Vielleicht sollte ich doch mal den Artikel mit der 1/2/3 "cigarette" lesen, den finde ich aber auf die Schnelle gerade nicht mehr.
Gute Nacht.
Peter
Nochmal ganz kurz: Wenn wir festlegen 1000ppm sind für uns genug Schmutz und somit "Vollausschlag" können wir die Steigung (Verstärkung) anheben. Dann ist das System halt bei >1000ppm am Poller. Den Artikel kenne ich nicht, aber vielleicht gibt es irgend wo realistische Werte, was als "Verschmutzung" dient. Wir müssen ja nicht den eventuell möglichen Bereich des Sensors ausnutzen.
Gruß Gerhard
Ich ändere mal die schaltung auf das von Peter gepostete beispiel mit dem Poti. Von welcher advancedSchaltung sprecht ihr? Beispiel?
Geplant war, das die Temperatur-und Luftfeuchtigkeitskompensation für beide TGS per Software gelöst wird. Ist ja ein DHT22 drauf.
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Hallo zusammen,
habe nur das (http://en.wikipedia.org/wiki/Carbon_dioxide) gefunden, Kapitel toxicity.
Ich schau mal am Wochenende, ob ich was zeichnen kann. Ich meinte, ich hätte gestern einen Artikel gelesen, wo das Signal nach 1 Zigarette/ 2 Zigaretten / 3 Zigaretten aufgetragen war. Die Änderung war nicht so wirklich spektakulär.
Gruß Peter
Hallo Tobias,
den Poti brauchst Du nicht unbedingt. Du kannst erst mal mit Festwiderständen arbeiten.
PS: Mein Beitrag von gestern kurz vor 12 war Mist. Wir haben ja die höchste Spannung im "Leerlauf" d.h. die Verstärkung bleibt.
So sieht es jetzt für den TGS4161 aus... Korrekt?
Edit: ist jetzt im Layout auch so drin...
Der TGS2600 ist auch korrekt angeschlossen?
Denk an die Masse für den TLC. Und die Frage an die Panstampexperten: Muß man die Ausgangsspannung des TLC begrenzen? Er könnte ja bis zur Betriebsspannung (5V) hochgehen. Oder ihn nur mit 3,3V betreiben.
Masse TLC??? Hängt doch an Pin4...??..??
Der TLC kann ab 3V betrieben werden. Ich hänge ihn auch an die 3.3V Schiene (Pin 7[VCC]+8[BIAS]), aber müssen dann die Widerstände angepasst werden?
Hier mal ein Plot vom TGS2600 mit RL=10K. Im Vergleich dazu ein Velux CO20 - VOC Sensor.
Der kurze hohe Ausschlag des TGS2600, da habe ich ihn mal für 1min direkt "angehaucht"
Sorry Tobias, hab ich übersehen!!!!!
Die Widerstände haben nichts mit der Betriebsspannung zu tun. Der Ausgang kann aber, bei entsprechender Eingangsspannung, über die 3,3V die der Panstamp verträgt, hinausgehen. Wenn Du ihn mit 3,3V betreibst ist da Schluß, egal was dann am Eingang passiert.
Alles klar. Dann kommt Pin 7+8 an 3.3V
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Guten Morgen Tobias,
habe gestern abend noch einmal gerechnet (siehe Anhang). Mit einem festeingestellten nachfolgenden Operationsverstärker könnte eine Verbesserung von Faktor 1,5 erzielt werden.
Problem ist der relativ hohe variable Nullpunkt bei 350 ppm CO2 Konzentration. Wenn wirklich der Aussteuerbereich massiv verbessert werden sollte, müsste die nachfolgende Stufe den Offset und die Verstärkung einstellbar haben, das mit einem Operationsverstärker zu realisieren, ist nicht ganz einfach. Aus diesem Grund kommt von mir das ok für die o.g. Schaltung.
Wichtig für die aktuelle Schaltung ist eine stabile Referenzspannung, damit möglichst wenig "Bitklappern" entsteht.
Vielleicht kann ja Gerhard noch mal drüberschauen und seinen Kommentar abgeben.
Edit: Beim Ablegen der diversen Ausdrucke ist mir noch eine Idee gekommen: man könnte ja den Ausgang des ersten OPs invertieren und dann den Offset ganz hochschieben, dass wir die Kennlinie rumdrehen, schaue ich mir morgen Abend noch mal an ...
Gruß Peter
Hi Peter, als Spannung quelle für 3.3V ist der TSL2433 vorgesehen. Siehe komplette Schaltung Seite 2. Ich denke dieser stellt eine stabile Spannung bereit.
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Hallo Peter: Die Schwierigkeit ist doch die, daß die Spannung bei steigender Konzentration immer weniger wird. Wenn ich die Eingangsspannung invertiere und dann abziehe kommt immer Null raus. (Hab ich früher mal in einer Schaltung gebaut, ganz großes Kino, hat prima geklappt aber nicht wirklich geholfen ;-))) Problem ist auch für invertierende Verstärker die single Supply Versorgung.
Hallo Gerhard,
ich würde einen Differenzverstärker nehmen: Offset an den Plus Pin und Signal an den Minus Pin. Wenn das alles im Bereich bleibt, geht auch single supply. Rechne ich mal morgen ...
Gruß Peter
Ist die Schaltung des TGS4161 fertig oder doch nicht? Redet ihr jetzt vom TGS2600? Bräuchte da auch noch eine Bestätigung das die Schaltung vom 2600 korrekt ist.
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Hallo Tobias,
ich habe mich bisher nur um den TGS4151 gekümmert ;) Aber wenn Du willst, kann ich mir den anderen auch noch anschauen.
Ich habe vorhin (entspannt im Garten bei einer Tasse Kaffee und Sonnenschein, ohne Computer) mal gerechnet, Ergebnis siehe Anhang.
Wenn Du einen TLC272 nehmen kannst und noch vier zusätzliche Widerstände unterbringst, dann gibt das eine Verbesserung von ca. Faktor 3. Allerdings hat das Ding einen Haken: bei Spannungen (350 ppm) von kleiner als 360 mV am Sensor müsste die Beschaltung verändert werden: 51 k Ohm im ersten Zweig kleiner, dafür die 30 k Ohm im zweiten Zweig größer.
Für mich ist auch die Frage, wie die Die Kalibrierung des Sensors machst. Der "Nullpunkt" (350 ppm) sollte kein Problem sein, aber woher bekommst Du eine stabile CO2 Konzentration für die Steigung?
Schau es Dir mal an, ob Du damit klar kommst, wenn nicht, kurze Info hier oder per PM.
Gruß Peter
Edit:
Habe den TGS2600 auch "gerechnet". Sensor an 5 V betreiben, Lastwiderstand von 10 k, dann kommt bei "guter" Luft (Rs = 10 k) 2,5 V am Panstamp an, bei "schlechter" Luft (Rs = 90 k) 0,5 V.
Der von mir in einem Post vorher postulierte Parallelwiderstand war Quatsch, aber so ist das halt, wenn man nur "gschwind" drüberschaut.
Schaut interessant aus. Allerdings ist der haken auch nicht so doll. Muss ja von jedem einfach laut bestueckungsplan Nachbaubar sein. Ich habe zur zeit den 271 an 3.3v anstatt 5v um nicht über die 3.3v zu kommen. Siehe Posting Nr 63.
Grundsätzlich könnte ich aber einen 272 und auch 3 zusätzliche Widerstände verbauen.
Edit: da hab ich ja beim 2600 alle richtig gemacht. :) Siehe auch mein Plot. Wenigstens einer ;)
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Hallo Tobias,
dann würde ich den TLC27x an 5 V betreiben (ich dachte (natürlich wieder mal nicht nachgeschaut :() die hängen an 3,3 V).
Dann entspannt sich die Sache mit der Umbestückung deutlich, dann müsstest Du ggf. nur den 30 k Widerstand im zweiten Zweig verkleinern. War ein Denkfehler: die 3,3 V sind ja die limitierende Größe für den Arduino. Sprich die oben gerechneten Grenzen sind gleich. Trotzdem schadet die 5 V Anbindung der OPs m.E. nicht.
Zitat3 zusätzliche Widerstände verbauen
Warum nur 3? 2x10 k und 2x30 k machen bei mir vier 8)
Gruß Peter
hallo tobias,
wie schon gemailt habe ich dein päckchen bekommen. auf dem breadboard schaut es zwar noch nicht sehr elegant aus aber anbei schon mal ein erstes bilder und ein kleiner film vom prinzip der bedienung.
was geht: panstamp, BMP085, DHT22, TEMT6000, LCD und rotary encoder sind zusammengesteckt.
im film sieht man die readings die live aktualisiert werden und sobald man am encoder dreht erscheint ein popup mit dem eingestellten wert. wenn man 2 sekunden nichts ändert verschwindet das popup und der wert wird an fhem gesendet. die readings sowieso regelmäßig.
prinzipiell spielen die teile also alle zusammen. und es ist auch alles schnell genug das man es interaktiv bedienen kann. du kannst also deine bessere hälfte drauf los lassen und dann später damit die soll temperatur einstellen lassen.
die anzeige muss natürlich noch hübsch gemacht werden, icons dazu, das senden von info von fhem aus an das display, eine menüstruktur um mehr als nur einen wert einstellbar zu machen und noch ein paar dinge die mir so einfallen.
die beleuchtung vom encoder und die beiden luft sensoren fehlen noch. die hintergundbeleuchtung wird noch nicht gedimmt. den ram chip hab ich auch noch nicht dran.
gruss
andre
Wow... Andre, bis du am WE bei dem schönen Wetter auch rausgekommen? Oder hast du den Laptop mit in den Garten genommen? Respekt... Ich sehe auch das du es im Querformat hinbekommen hast... :)
Du siehst, mit dieser Platine, insbesondere TFT und RotEnc hat man fast unendlich viele Möglichkeiten...
zb. für draußen: ohne Display und RotEnc als Umweltsensor
oder innen nur für die SollTemp mit TFT, RotEnc und DHT. Ohne TEMT,BMP und TGSxxxx Sensoren... (Die TGS sind auch die mit Abstand ab teuersten... TGS4161 (Co2) > 20€/Stück)
Was mir auch noch eingefalen ist, den BMP wird man i.d.R nur bei einer Installtion einsetzen, bei dem Rest ohne.. D.h. die Temp müsste bei fehlendem BMP natürlich vom DHT genommen werden.
@Peter/Gerhard: Ich habe die Schaltung auf Peters Berechungen hin geändert. Jetzt VCC=5V! Den einen Widerstand habe ich wie empfohlen etwas verkleinert von 30k auf 22k.
Schaut bitte nochmal abschließend genau drauf. Ich würde die Platine dann so In Auftrag geben... Wie gesagt, ich bin Wirtschaftinformatiker, kein Elektrotechniker. Habe keine Ahnung von Hardwareberechungen wie Ihr...
<offtopic an>
Am liebsten würde ich noch zusätzlich ein E-Technik Studium absolvieren, Atmel-Programmierung lernen und eine KFZ-Lehre machen. Da hab ich alles was man so im Leben braucht... Aber die Zeit, die Zeit.......Family und Kinder haben fast alles in Beschlag ;)
<offtopic aus>
Wenn Ihr möchtet lasse ich euch auch ein Exemplar der PrototypenPlatine zukommen, Als Dank quasi :)
Hallo Tobias,
folgende Anmerkungen:
- IC10B: die beiden Eingänge tauschen, sonst funktioniert es nicht
- R17 würde ich dann auch auf 22 k heruntersetzen (das ist ein Differenzverstärker, der sollte beide Widerstandspaare gleich haben)
Die Platine kannst Du dann so machen lassen, ein Ändern der Bestückung (bei gleichem Layout) geht ja immer.
Anmerkung zum Schaltplan:
Wenn Du die Symbole so zeichnest:
- Versorgung nach oben
- Masse nach unten (auch die Massesymbole)
- Signalfluß von links nach rechts
tust Du Dir vermutlich leichter, die Pläne zu lesen (so geht es mir, trotz oder vielleicht wegen Elektrotechnik Studium).
ZitatWenn Ihr möchtet lasse ich euch auch ein Exemplar der Prototypen Platine zukommen, als Dank quasi.
Es kann durchaus sein, dass ich mir einen solchen Sensor zulegen werde, bzw. bei der Inbetriebnahme meine Bugs ausbügeln muss. Aber zuerst möchte ich mal den ganzen Funktionsumfang des Sensors verstehen ...
Bezüglich Kalibrierung bin ich immer noch neugierig ;D
Gruß Peter
Umbau und neuer Versuch... Jetzt i.O.?
Ich habe im Datenblatt bzgl Kalibrierung nur gelesen, das der Nullpunkt ermittelt werden muss. Also bei sauberer Luft die Ausgangsspannung als EMF1 merken und die gemessene Spannung EMF2 im Folgenden davon abziehen...
Ich habe den Beitrag vorher schon nicht ganz verstanden was du mit Kalibrierung der Steigung meinst. Die Gerade im Datablatt ist doch linear steigend?
Edit: Hab das Layout jetzt auch angepasst, 3 Widerstände musste unter die Platine
ich hab erst mal den garten auf den kopf gestellt damit ich überhaupt draussen sitzen konnte. der sketch war dagegen ausruhen. und es ist ja wirklich noch einiges zu tun.
ZitatDu siehst, mit dieser Platine, insbesondere TFT und RotEnc hat man fast unendlich viele Möglichkeiten...
des wegen hab ich den ja auch vorgeschlagen :)
alle teile wie sensoren und lcd und encoder sind aus dem sketch raus konfigurierter. wenn kein BMP da ist wird automatisch die temperatur vom DHT genommen. welche features in den sketch rein kompiliert sind kann man über die SWAP hardware version jederzeit auslesen.
vielleicht sollten wir mal anfangen ideen für features und die bedienung zu suchen. mir fällt unter anderem ein:
- welche messwerte sollen wo in welcher größe und farbe wie angezeigt werden
- wie oft sollen die sensoren abgefragt werden? wie oft sollen aktuelle werte auf dem tft angezeigt werden?
- konfigurierbares dimmen des tft abhängig von helligkeit und/oder zeit
- verwende des tft als status display für fhem
- nachrichten temporär anzeigen oder auf dauer bzw. bis sie über den encoder bestätigt werden
- grafiken/plots/vergangene messwerte abrufen
- grenzwerte für messungen und was soll beim über-/unterschreiten passieren
- konfiguration aller parameter über funk/fhem
- konfiguration aller (oder der wichtigsten) paramter über das tft und den encoder
gruss
andre
Sorry für die Verspätung. Das Ganze steht und fällt mit der Reverenzspannung (5V Versorgung). Im Wurst Käse Fall müssen wir da noch eine Reverenzspannungsquelle einsetzen. Ähnlich LM336 (2,5V)
Frage: Was bedeuten die violetten Kästchen mit dem Kreuz im Layout? Und brechen die äusseren vier Bohrungen nicht am Rand durch?
Gruß Gerhard
Du kannst ja mal ins Datenblatt des tsl 2450 schauen ob die Spannung stabil bleibt. Die violetten Kästchen sind hinweise auf enge Leiterbahnen.
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Ich hoffe nicht, das das was ausmacht
Modelle mit Ausgang 1.2 bis 6.5 V: 50 mVpk-pk max.
Verhalten bei Lastwechsel (Lastsprung 50%) 150 mV max. (Scheitelwert Änderung)
Der Panstamp ändert sicher seinen Stromverbrauch während des Betriebs. Die beiden Heizungen der Luftsensoren dürften dagegen immer gleich viel Strom verbrauchen.
Ich will nicht in den Krümel suchen, bitte aber auch die anderen wenn möglich diese Punkte zu entkräften. Vielleicht höre ich ja auch die Flöhe husten.
Hallo,
jetzt ist der TGS4161 aus meiner Sicht OK. Die Werte schaue ich mir noch mal an.
Kalibrierung: Den Nullpunkt bekommst Du mit "guter" Luft hin. Aber bei 3500 ppm ist dann die Differenz zum Nullpunkt zwischen 44 und 72 mV, die hoch verstärkt werden, also fast 100 % Unterschied. Wo bekommst Du als Referenz definiert "schlechte" Luft her?
Gruß Peter
Zitat von: PeMue am 31 März 2014, 22:52:42
Kalibrierung: Den Nullpunkt bekommst Du mit "guter" Luft hin. Aber bei 3500 ppm ist dann die Differenz zum Nullpunkt zwischen 44 und 72 mV, die hoch verstärkt werden, also fast 100 % Unterschied. Wo bekommst Du als Referenz definiert "schlechte" Luft her?
Hi Peter,
schwierig.. ;)
Allerdings bin ich davon ausgegangen das die Eingangsschwankung zur Kalibrierung korreliert mit der Differenzspannung bei 3500ppm
Also:
- Nullpunkt mit 350ppm bei 220-470mV
- Differenz zum Nullpunkt bei 3500ppm bei 44-72mV
Wenn Also Nullpunkt bei 220mV liegen sollte, so ist schlechte Luft mit 3500ppm bei 44mV
Ich schon wieder.
- Nullpunkt mit 350ppm bei 220-470mV
- Differenz zum Nullpunkt bei 3500ppm bei 44-72mV
Wenn Also Nullpunkt bei 220mV liegen sollte, so ist schlechte Luft mit 3500ppm bei 44mV
Ist dann nicht 3500ppm mit einer Differenz vom Nullpunkt von 44-72mV ein Betrag von 220mV MINUS 44-72mV???
Hi Andre,
Zitat von: justme1968 am 31 März 2014, 17:52:21
vielleicht sollten wir mal anfangen ideen für features und die bedienung zu suchen. mir fällt unter anderem ein:
- welche messwerte sollen wo in welcher größe und farbe wie angezeigt werden
- wie oft sollen die sensoren abgefragt werden? wie oft sollen aktuelle werte auf dem tft angezeigt werden?
- konfigurierbares dimmen des tft abhängig von helligkeit und/oder zeit
- verwende des tft als status display für fhem
- nachrichten temporär anzeigen oder auf dauer bzw. bis sie über den encoder bestätigt werden
- grafiken/plots/vergangene messwerte abrufen
- grenzwerte für messungen und was soll beim über-/unterschreiten passieren
- konfiguration aller parameter über funk/fhem
- konfiguration aller (oder der wichtigsten) paramter über das tft und den encoder
Im Anhang ein paar Folien wie ich mir das Vorstelle. Die Homescreen´s und SollTemp aus meiner Sicht Prio1.
Wie of die Messwerte nach FHEM gesendet werden sollen, sollte per set einstellbar sein. So wie es im Soilmoisture Sketch auch schon ist. Intern abgefragt sollten sie IMHO alle 10sek oder weniger und entsprechend auch auf dem TFT aktualisiert werden.
Wie du auf den Screens siehst, steht nirgendwo die Lichtintensität. Diese sollte nur an FHEM übertragen werden bzw das TFT automatisch danach gedimmt werden. Max-und Min-Brightness sowie die Abhängigkeitskonstante könnte im nächsten Schritt per fhem-Set konfigurierbar gemacht werden.
Ein kleines Feature, sichtbar im Home2 Screenshot: die Solltemperatur wurde von FHEM per "Set" verändert. Weiterhin wurde von FHEM die WindowOpen Meldung gesendet, sichtbar als kleines Icon im blauen Fenster der SollTemp. Ich denke das man beides zusammen in einer Msg senden könnte: Solltemp + optional WindowOpen(0,1).
Wichtig: die eingestellte Solltemp sollte im NVSRAM Chip gespeichert werden, nach einem Stromausfall muss der vorherige Zustand wieder hergestellt werden ;)
Grenzwerte und Aktionen würde ich eher in FHEM sehen.
Ich denke es ist auch sinnvoll dafür ein eigenens Modul zu schreiben, ähnlich dem RGB-Driver... Habe mich aber damit noch nicht auseinandergesetzt.
anbei ein video vom aktuellen stand:
- das layout ist an deinen folien angelehnt.
eine 1:1 umsetzung geht nicht weil die auflösung des displays viel geringer ist als dein entwurf
und der font auch andere andere proportionen hat
- du siehst wie der panstamp bootet und das display initialisiert
- wenn man am encoder dreht wird desired eingestellt.
grenzen und schrittweite sind konfigurierbar
- wenn eine nachricht kommt erscheint ein popup. in diesem fall ohne timeout
- auf knopfdruck verschwindet die nachricht
- desired steht auf off
für ein fenster icon wie im vorschlag ist die auflösung zu klein
- wenn man am encoder dreht wird desired wieder eingestellt
- alle werte die du siehst werden live aktualisiert.
der temperaturanstieg am ende ist mein finger auf dem bmp
- für alle messwerte gibt es einen konfigurierbaren korrektur offset
- vorder- und hintergundfarbe sind konfigurierbar
mal sehen wie viel noch in den sketch passt. langsam sollte ich mal etwas optimieren sonst ist bald schluss :)
gruss
andre
Ich sag nur: Großes Kino..... :)
Klappt denn das Dimmen gem. TEMT schon?
Ich mach heute die Platine fertig und bestell mal eine Prototypenauflage von 10stk. Habe gestern extra nochmal das Gehäuse ausgemessen.
Ich denke in KW16 sollten diese dann da sein :)
Edit: gut wär es, wenn CO2 bzw VOC nicht bestückt ist, dieses auch nicht auf dem Display erscheint.
Der Smiley muss kommen sobald CO2 und/oder VOC bestückt ist.
Wir müssen uns auch noch Gedanken machen wir wir jetzt aus den Ausgangsspannungen einen ppm-Wert erhalten.
@Gerhard,Peter: könnt Ihr aus dem Verstärkungsfaktor eine Formel ableiten um aus VDD -> ppm bzw EMF2 zu erhalten?
Ich beobachte die Fortschritte hier schon eine Weile. Wenn Ihr jemand zum testen braucht stelle ich mich gern zur Verfügung. Ich bin von dem Funktionsumfang jetzt schon begeistert.
Ich hab mir vorsichtshalber schon mal zwei Panstamps bestellt. Würd mich freuen wenn ich bei euch mittüfteln darf. Wenn Ihr mir sagt wo ich Infos zu dem VOC sensor finde frag ich mal unseren Messtechnik spezi wie die des bei Professionellen Systemen berechnen.
Herzlich willkommen :)
Der VOC Sensor ist dieser hier: TGS2600
Dieser ist mit RL=10k angeschlossen. Wichtig für die Umrechnungsformel!
Der CO2-Sensor ist dieser hier: TGS4161
Den Anschlussplan findest du ein paar Posting weiter oben. Dieser ist wichtig um die Umrechnungsformel ableiten zu können.
ja. werte die es nicht gibt werden normalerweise nicht angezeigt. das ist in dem video nur zum testen so :)
das dimmen klappt im prinzip auch schon. die abbildung von sensor wert auf dimm wert passt aber noch nicht. beides ist nicht linear aber leider ist beim einen die auflösung im hellen bereich besser und beim anderen im dunklen.
gruss
andre
Zitat von: justme1968 am 02 April 2014, 12:56:50
das dimmen klappt im prinzip auch schon. die abbildung von sensor wert auf dimm wert passt aber noch nicht. beides ist nicht linear aber leider ist beim einen die auflösung im hellen bereich besser und beim anderen im dunklen.
Hast du da eine Idee wie wir das userfriendly lösen können?
ich weis wie ich das auf einem 'richtigen' rechner lösen würde. mal sehen ob man das auch hin bekommt ohne zu viel speicher zu verschwenden...
Zur "Steigung": Die Kennlinie ist, so wie ich sehe, logaritmisch. Ich denke, wir legen den Endwert (höchste für uns wichtige Konzentration) fest und dann kann man es umrechnen oder einzelne Punkte in einer Tabelle ablegen. justme1968 hat da bestimmt mehr Erfahrung.
Gruß Gerhard
Ich hab hier etwas bzgl des TGS4161 und dessen Berechnung...
TGS4161 - CO2 Sensor. How does it work ? (http://www.libelium.com/forum/viewtopic.php?p=33100&sid=6d75b013b87ad02717b95fc04ee19682)
If you need help with CO2 sensor. Read this! (http://www.libelium.com/forum/viewtopic.php?f=15&t=8659)
Insbesondere im letzten Link wird genau erklärt wie man umrechnen muss. Das muss jetzt allerdings auf den Verstärkungsfaktor angepasst werden. Welcher ist das nun eigentlich genau laut aktueller Schaltung?
Wenn V1.1 die "gültige" Schaltung ist hat der erste Verstärker 51/10+1= 6,1. Der Differenzverstärker hat 22/10= 2,2. So haben wir 6,1*2,2= 13,42.
Das gibt bei 350mV Ausgang am Sensor 0,350*13,42= 4,697V. Ein Delta von 90mV (von denen manchmal die Rede ist) ergibt 0,090*13,42= 1,2078V.
So ist der "untere" Punkt 4,697-1,2078= 3,4892V.
Wenn ich das mit dem Differenzverstärker richtig sehe, soll ja bei 350mV Eingang und 6,1 facher Verstärkung (2,135V) NUL rauskommen. Und dann, bei abnehmender Eingangsspannung (bleiben wir bei den 90mV) (0,09*6,1= 0,549V) wenn möglich an die 3V herauskommen. Dann sind wir bei 2,2 facher Verstärkung bei 0,549*2,2= 1,2078V. Somit KÖNNTE man die Verstärkung um Faktor 3 erhöhen. Also statt 2,2 fach nochmal 6,1 fach. Das würde dann 3,3489V ergeben. Die Widerständr R17 und R18 würden sich dann von 22K auf 61K erhöhen.
Lest bitte mal drüber und schreibt Kommentare, es kann sein, daß ich vor lauter Bäumen den Wald nicht sehe und vollkommen falsch liege.
Hallo Gerhard,
ich werde am Wochenende mal die Werte in eine Excel-Tabelle eintragen. Das hilft vielleicht dann bei der Auslegung.
Gruß Peter
Ja, mach das. Wir müssen mit den Verstärkungen "spielen" um den größtmöglichen "Differenzbereich" zu erreichen. Für Tobias ändert sich erstmal im Layout nichts, lediglich in der Bestückung.
Ich glaube, der Differenzverstärker sollte am Eingang 3,4375V haben. (Das ist die Spannung, die sich aus der Teilung 10K zu 22K der 5V Versorgung ergibt)
Somit könnte der erste Verstärker statt 6,1 sogar 9,82 haben. Also vorne rauf und hinten runter ;-))
Da helfen dann die Excel Tabellen.
BTW: ich habe heute von mouser eine Info bzgl des NVSRAM Bausteins bekommen, werde aber nicht wirklich draus schlau. So wie ich das lese ändert sich nur der Hersteller? Für uns änder sich nichts... angeblich bekommt man auch samples.
http://www.mouser.com/PCN/Cypress_Semiconductor_135221.pdf
So ich hab mich jetzt mal ne weile mit dem VOC Sensor beschäftigt.
Da hat sich folgendes Problem ergeben. Der Sensor reagiert wenn ich die Grafik richtig interpretiere unterschiedlich empfindlich auf die Verschiedenen VOC's.
Jetzt ist bei der Angabe der Luftqualität natürlich die Frage nach welchem Graphen gehen wir?
Oder bilden wir für unseren Anwendungsfall einen eigenen Graphen welcher die wichtigsten Messwerte der einzelnen Bestandteile beinhaltet?
Mir zum Beispiel wäre die Wasserstoff Konzentration bis zu einem Gewissen Punkt egal dafür die CO Konzentration wichtiger.
Wenn ich das richtig sehe sind die Graphen nur einzelne Messwerte die dann linear interpoliert wurden. Seht Ihr das genauso?
so wie ich das sehe betriff uns die umstellung beim nvsram nicht. das betrifft nur den produktionsprozess.
ich sehe gerade der ram baustein hat auch eine rtc und eine interne serien nummer. mal sehen ob ich beides auch zum laufen bekomme. die serien nummer könnte man für die swap adresse verwursten und würde sich das einstellen sparen. die uhr wäre ideal um auch stand alone readings aufzuzeichnen.
für die sdkarte ist der aktuelle plan einen eigenen sketch zu schreiben um daten von der sd karte ins nvram zu kopieren. dann würde die sd lib nicht immer im sketch nötig sein.
gruss
andre
Zitat von: Tobias link =topic=20956.msg155784#msg155784 date=1396599050
BTW: ich habe heute von mouser eine Info bzgl des NVSRAM Bausteins bekommen, werde aber nicht wirklich draus schlau. So wie ich das lese ändert sich nur der Hersteller? Für uns änder sich nichts... angeblich bekommt man auch samples.
http://www.mouser.com/PCN/Cypress_Semiconductor_135221.pdf
Ist nur ein Hinweis über die Produktion Verlagerung des Verpackers.Kannst ja mal bei mouser den Qualifikationsplan anfordern, ob dieser von Deinem Qualitätsmanagement akzeptiert wird 8)
Gruß Peter
hier mal eine idee wie die konfiguration aussehen könnte. zumindest für ein paar wichtige parameter. alles wird vermutlich nur über funk gehen. der sketch wird sonst zu groß.
die helligkeit ist gerade nur ein beispiel. du siehst wie sehr das ganze nicht linear ist. und leider genau entgegengesetzt zur empfindlichkeit des helligkeits sensors.
die automatische regelung hab ich jetzt halbwegs vernünftig hin bekommen. aber die werde ich noch mal umschmeissen und optimieren. das muss auch einfacher gehen.
was noch zu sehen ist ist die dezimalstelle bei der temperatur die ich optional noch untergebracht habe. die anderen optimierungen sind zwar nicht zu sehen aber noch wichtiger :). der sketch ist einiges kleiner geworden und ich kann die sensoren jetzt so schnell abfragen das es für den dht22 schon zu schnell ist :) dadurch wird die bedienbarkeit mit dem encoder aber sehr viel besser.
gruss
andre
Hallo zusammen,
hier wie schon angekündigt mein Excel Sheet. Wenn ich mir die Sache so anschaue, würde ich gerne optional bestückbar nach den Verstärkern einen Spannungsteiler einbauen, um die Sensoren mit dem max. Offset runterzuteilen, falls notwendig. Die Streuung der Sensoren ist schon arg >:(
Achso: Die Kennlinie ist natürlich logarithmisch.
@Andre: geht das überhaupt mit den Rechenroutinen, die dem PanStamp zur Verfügung stehen? Oder ist da eine (kalibrierbare!) Lookup-Tabelle besser?
Gruß Peter
Also ich werd für den VOC-Sensor mal ne Komprimierte Kennlinie erstellen. Dazu müssten wir uns aber einigen welche VOC's wir betrachten wollen? Ich würd sagen Wasserstoff könnenwir rauslassen Iso-Butane auch und Ethanol würd ich dann konsequenter weise auch rauslassen. CO und Methane würd ich dann zu einem Graphen zusammenfassen und ne Wertetabelle erstellen. Soll ich die Tabelle eher Methan oder CO lastig auslegen? Ich würd sagen CO!?
im prinzip steht die math lib zur verfügung. es gibt aber keine fp hardware und es wird alles in software gemacht. die lib schlägt mit recht viel zusätzlichem speicher zu buche.
ich würde wenn es irgendwie geht auf floatingpoint operationen verzichten wollen. eine näherung und/oder eine lookup table ist also (je nach größe) besser.
gruss
andre
Die math lib ist in der Tat sehr fett. Aber in praktisch fast allen Fällen man auch mit Festkomma weiter.
eben.
... also dann eher Abgleich in der Hardware vorsehen, ich schau mal, wie das für den CO2 Sensor machbar wäre.
Gruß Peter
Dann bietet sich doch eine Referenzspannungsquelle mit anschliessendem Poti an um jeden Sensor bei seinem maximalen Ausgang mit dem Differenverstärker auf Null zu stellen. Dann kann dieser auch eine größere Verstärkung als 2 haben. (armer Tobias ;-))
Also ich möchte vorschlagen, da die erste Prototypenversion jetzt bestellt und damit fix ist, das wir uns erstmal darauf konzentrieren zur derzeitigen Schaltung, siehe Anhang, die Formeln zu erstellen die Andre dann in die Software einbauen kann.
Wenn der Prototyp dann läuft haben wir einen Vergleich und können auch an der Schaltung noch optimieren.
Das ist vernünftig, vielleicht sind ja auch noch andere "Macken" drin. Ich spreche da aus eigener Erfahrung ;-)
In China ist gerade Feiertag. Ich denke die Platinen sind nächste Woche da. Habt ihr schon etwas bzgl. der Formeln zur umrechnung herausbekommen können??
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Wenn die Frage in meine Richtung ging ich arbeite dran. allerdings gerade an der für VOC wenn ihr lieber erst nur für den CO2 Sensor was braucht kann ich aber auch gern da mitgrübeln;)
Des mit dem VOC bereitet mir ziemlich Kopfschmerzen. Aber vieleicht Versuch ich's auch wieder nur zu genau zu machen.
Hallo zusammen,
die Excel Tabelle für den CO2 Sensor ist ein paar Posts weiter oben. Ich schaue mal, dass mit einem "unsymmetrischen" Differenzverstärker in der zweiten Stufe der Abgleich durchgeführt werden kann. Ich stelle mir so etwas vor:
- erste Stufe bestücken und dann den Sensorausgang messen
- anhand der Sensorwerte (Nullpunkt bei 350 ppm) den zweiten Verstärker bestücken
- wie wir die Steigung ermitteln ist noch nicht klar, aber da können wir ja erst mal eine "mittlere Steigung" einbauen
Die Widerstände der zweiten Stufe sollten halt aus derselben Serie sein (wegen Temperaturabhängigkeit, etc.).
Kann aber sein, dass es erst am Wochenende passiert, da ich eben erst heimgekommen bin.
Gruß Peter
hab grad den tsl2561 probiert. der auflösung ist viel besser und durch das umschalten kann man ziemlich genau den bereich einstellen den man braucht. von den features würde ich sagen der ist klasse.
das ding kostet im gegensatz zum temt6000 etwa 800byte mehr code. der sektch ist zur zeit zwischen 27k und 28k groß. ich weiss noch nicht wie viel für co2 und voc drauf geht. mit der konfigurierbarkeit bin ich auch noch nicht so weit wie ich gerne möchte. mal sehen ob ich die 800byte noch irgendwie verringern kann.
ich denke wir sollten beide optionen offen halten. eventuell kann man ja z.b. da wo kein bmp805 drauf ist und der code dazu nicht gebraucht wird den tsl2561 verwenden und nur da wo es nicht reicht den temt6000.
im übrigen würde ich einbauen das die boards die keinen bmp805 haben den luftdruck per funk bekommen und trozdem anzeigen können.
was hältst du von luftdruck tendenz und wettervorhersage? eventuell nicht alles direkt auf dem modul gerechnet sondern aus fhem übertragen?
gruss
andre
Zitat von: Tobias am 08 April 2014, 09:27:18
Hi Andre,
bzgl der Nichtlinearbarkeit des TEMT6000. Ist es ev. besser einen TSL2461 zu nehmen? Der hat i2c, hat 2 Sensoren drauf (Infrarot und Sichtbares Licht). Weiterhin kann man die Empfindlichkeit umschalten. zb. Sinnvoll bei dämmerlicht.
Siehe auch Dirks Thread bzgl Homematic Selbstbau.
Wenn du Ihn für besser befindest sehe ich ihn für die nächste Serie vor...
Hallo zusammen,
bei ELV (http://www.elv.de/technoline-luftguetemesser-wl-1000-braun-metallic.html) gibt es auch so ein ähnliches Teil (Luftgüte), ich habe mir die Bedienungsanleitung nicht angeschaut, aber gerade den Sensor im aktuellen Flyer gesehen.
Gruß PeMue
Zitat Elv:
ZitatAnzeige von CO2-äquivalenten Messwerten (misst nicht den CO2-Gehalt) und Qualitätsindikator
Schon klar... denn die CO2 Messung benötigt die mit Abstand teuersten Bauteile ;)
Andre, bzgl Luftdruck per Funk. Finde ich gut.... So braucht man nur einen BMP im Haus, kann aber den Luftdruck auf allen Geräten anzeigen lassen.
Da der tsl2561 auch I2C ist, sollte es einfach sein ihn an dieselbe Stelle des BMP im Layout zu setzen. Problem aber, der BMP liegt in der Mitte und nicht am Rand wo die Schlitze sein. Also doch nicht so einfach :( Und einen Acrylstab als Lichtleiter mag ich nicht... Schon der Einbaumacht Mehraufwand.... ich mach mir mal Gedanken...
luftdruck per funk ist inzwischen auch fertig. im prinzip auch von einem original panstamp temppress sensor. die adresse des luftdruck sensors wird automatisch gelernt (oder kann auch einkompiliert werden). es reicht also ein bmp085 im empfangsbereich.
das mit der luftdruck tendenz kann ich erst einbauen wenn ich den ram baustein dran habe. sonst reicht der speicher nicht für die 1 bzw 3 stunden history.
ich hab grad in datenblatt gesehen das man für die rtc noch eine kleine externe beschaltung braucht. kein wunder das ich nichts vernünftiges auslese :(.
schau mal auf seite 24. das wäre etwas für die nächste version.
der speicherzugriff an sich geht und ich kann auch von hand das permnent speicher triggern. die beschaltung für das autmatische speicher bei spannungsverlust noch nicht mit aufgebaut.
gruss
andre
Hab ich die beschaltung für das automatische speichern bei Verlust der Spannung vergessen????? Ich schau mir das morgen mal an....
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
nein. die ist da. ich hab sie nur auf dem breadboard nicht drauf.
die beschaltung für die rtc fehlt. ein quarz und zwei kondensatoren.
ich hab grad die konfig vom eeprom auf den nvsram baustein umgestellt. das geht klasse. schont den panstamp und spart sogar noch etwas flash weil der sketch 200 byte kleiner ist. ein paar defines und es ist völlig transparent. der baustein ist klasse.
find ich gut das du mit dem Baustein etwas anfangen kannst **g**
Hoffe das rechtfertigt den relativ hohen Preis des Chips ;)
Speicherst du dort auch die eingestellte SollTemp zwischen? Wie schon geschrieben: nichts ist WAF-feindlicher als nach einem Stromausfall die Bude kalt wird weil die SollTemp nach PowerOn in den Init-Stand geht ;)
Wozu/Wofür benötigst du die rtc? UseCase?
Als Quarz für die rtc würde ich diesen nehmen: (Reichelt)
32,768 PGC-12,5 :: quartz, SMD-Keramik, 3,2x1,5x0,75mm
Als Capacitors diese Keramik-Kondensatoren: (leider nicht SMD)
KERKO 12P
KERKO 68P
Leider gibts keinen mit 69pF so wie im Datenblatt empfohlen...
Andre, Kannst du es so machen, das nicht nur TempPress Sensoren automatisch eingebunden werden sondern auch DIESE hier? Also hat ein Sensor keinen BMP drauf nimmt er einen Press-Wert vom ersten empfangenen TempPress oder unseren.
Ich denke, das macht den Bock nicht fett. Wenn man bedenkt, was "normale" Kondensatoren für eine Toleranz haben macht da eine pF nix aus. Alles gut!
das habe ich mit config gemeint. alles was sich einstellen lässt wird bei aenderung im eeprom oder eben im nvsram gespeichchert und ist nach neustart/stromausfall wieder da.
luftdruck verlauf und min/max werte inzwischen auch.
mit rtc kann man die uhrzeit darstellen, gespeicherte werte mit einem echten timestamp versehen der auch einen neustart übersteht und nicht nur relativ ist, min/max werte tageweise berechnen, zu absoluten zeiten etwas tun. ich weiß. manches klingt noch schwammig. sie ideen kommen mit den möglichkeiten.
das mit dem luftdruck funktioniert fast genau so. der sketch kann beides empfangen. aber man muss sich beim kompilieren schon entscheiden. es wäre schade um den speicher beides gleichzeitig zu können wenn in der praxis ziemlich sicher niemals beides benötigt wird.
gruss
andre
Zitat von: justme1968 am 11 April 2014, 08:48:24
das mit dem luftdruck funktioniert fast genau so. der sketch kann beides empfangen. aber man muss sich beim kompilieren schon entscheiden. es wäre schade um den speicher beides gleichzeitig zu können wenn in der praxis ziemlich sicher niemals beides benötigt wird.
Mit Entscheiden meinst du zwischen unserer ID und TempPress-Sensoren?
Eine naive Frage: kann man mit einem externen Baustein den Speicher des Panstamps erweitern um größere Sketche zu laden?? Welcher Arduino wäre der aus Speichersicht nächstgrößere? Wie letztens schpon angedeutet plane ich den Panstamp durch eine ArduinoMiniPro/CC1101 Kombination zu ersetzen. Allerings hat ja der MiniPro diesselben Eigenschaften wie der Panstamp da identischer Baustein ;)
die id wird automatisch gelernt. der product code muss eingetragen werden. davon hängt ab in welcher nachricht an welcher stelle der luftdruck steht.
was die kommunkation der boards untereinander angeht gibt es noch ein paar dinge mehr die man machen könnte. z.b. was mir gerade noch einfällt ist das bestätigen der popup nachrichten. wenn man eine nachricht die nicht nur für ein display bestimmt ist quittiert sollte sie auf allen displays verschwinden. oder eigentlich ist ein board mit rtc genug. die zeit kann ja übertragen werden.
oder man setzt die zeit von fhem aus. dann ist das system halt nicht mehr autonom.
zum speicher: wichtig ist zu wissen das es drei arten von speicher gibt.
- flash -> da landet der kompilierte programmcode (und normalerweise auch strings, bitmaps,...)
- eeprom -> zum permanenten speichern von einstellungen
- sram -> alles was temporär zur laufzeit gebraucht wird. variablen, stack, ...
was langsam knapp wird ist der flash. eeprom ist unkritisch und mit dem nvsram amgedeckt. sram ist noch kein problem und lässt sich erst mal auch über den nvsram baustein ergänzen.
es gibt keine arduinos bei denen man flash oder eeprom transparent aufrüsten kann. das geht aber mit den seriellen bausteinen perfekt.
es gib welche bei denen liessen sich sram transparent aufrüsten. such mal nach xmem interface. wie gut das geht weiss ich nicht.
es gibt arduinos die haben von haus aus mehr speicher (in alles kategorien) das sind zum einen die arm basierten und zum anderen z.b. der Due oder der ATmega2560. die sind aber so gross das sie nicht mehr vernünftig in ein kleines gehäuse passen bzw. da kann man auch gleich einen rasperry pi verwenden wenn das genze eh nicht batterie betrieben ist.
wenn du von der board größe hin kommen willst bleibt nur die option den avr direkt mit aufs board zu designen und keinen fertigen arduino dran zu stecken. ein vorteil der größeren avrs wäre noch das sie mehr io pins haben. d.h. man wäre hier nicht am limit.
wenn sram der engpass wäre könnte man noch die neuen panstamps ins auge fassen. die haben aber leider auch nur 32k flash.
mehr flash wäre also eine größere umstellung. ich denke wir sollen erst mal schauen wie weit wir mit dem bisherigen board design kommen. 3.5k hab ich ja noch frei und ein bisschen luft zum optimieren ist auch. bei den boards ohne bmp ist auch deutlich mehr frei. die software features lassen sich ja zusammenkonfigurieren wie man es braucht und es ist nicht unbedingt überall alles nötig.
gruss
andre
Ganz naive Frage: Welche Art von Stromversorgung ist den vorgesehen?
vielen Dank für die Info. Also bleibt es bei den 32k flash. Einen avr-direkt auf das board zu designen ist ein NoGo.
Du kannst aber davon ausgehen das jedes Board einen NVSRAM-Baustein und damit auch eine rtc hat. Da müssen wir die Funklast nicht noch erhöhen.
Im gewissen Maße sollte das Board auch autark sein.
Wenn der BMP viel an flash frisst kann man ja auch ein Board mit BMP, DHT, VOC, CO2 außen hinstellen (ohne Display, RotaryEnc und LichtMessung. Und diese Funknachricht wird von allen aufgenommen und der Luftdruck dargestellt - so wie du vorgeschlagen hast.
Edit: Stromversorgung 7-36VDC
die funklast sehe ich nicht als problem. die zeit würde nur 1-2 mal am tag übertragen und beim start. ist also zu vernachlässigen. sogar das kann man am ende unter dem aspekt speicher sehen. ist es aufwändiger die seit zu empfangen oder lokal alles abzufragen und zu konfigurieren. da kann ich noch gar nicht testen. ich hab keine teile für die externe beschaltung da.
Ich habe RTC im v1.2 schon eingebaut. Ist also beim nächsten Mal dabei. :)
Zitat von: Tobias am 11 April 2014, 07:45:19
Als Capacitors diese Keramik-Kondensatoren: (leider nicht SMD)
KERKO 12P
KERKO 68P
Leider gibts keinen mit 69pF so wie im Datenblatt empfohlen ...
Beim großen C gibt es SMD Kondensatoren, leider nur runter bis Baugröße 0805. Die 69 pF gibt es meines Wissens nicht in der entsprechenden Reihe, aber wie Gerhard schon geschrieben hat, ist 68 pF völlig ok.
Gruß Peter
Kommende Woche bestelle ich ein paar teilesets bei reichelt. Da bestelle ich den Quarz gleich mit fuer dich.
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
grad gefunden. leider preislich jenseits von gut und böse:
http://www.chip45.com/products/crumbuino-128_arduino_kompatibel_atmega128_modul_board_usb.php
http://www.chip45.com/products/crumbuino-mega_arduino_kompatibel_atmega2560_modul_board_usb.php
128k oder 256k flash und jeweils 4k oder 8k sram.
da könnte man noch ein paar tolle dinge ins Programm packen.
wills du das kein avr aufs board designen nicht doch noch mal überdenken :) ?
gruss
andre
Es gibt einen einfachen Grund: einen DS2408 bekomme ich einfach auf ein Board geloetet. Einen Arduino nicht mehr.
Der 256er hört sich nicht schlecht an, aber 45€ ist nicht ohne.....
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Müsstest Du da die ganze Platine aus dem Link integrieren oder "nur" den Chip?
eigentlich ist es ja nicht viel mehr als der chip. die externe beschaltung ist minimal. und die nackten atmegas kosten auch nur ein bruchteil der fertigen Platine.
edit: bei reichelt kostet ein nackter atmega2560 pro stück 11 euro. mit den 256k flash könnte man einige schöne dinge tun. denk doch noch mal drüber nach für version 2.0 ;)
ich hab heute den tag damit verbracht zu schauen was alles zu tun ist um das ganze nicht mehr seriell sondern per isp programmer zu flashen damit die pins der seriellen schnittstelle frei werden. da man dabei dann gleich den bootloader flashen kann hab ich mal etwas weiter gesponnen... mit einem anderen bootloader könnte man noch über 1k flash sparen. aber eventuell noch was besseres machen:
der atmega328 ist mit seinem flash eigentlich zu klein für ota updates. aber... ich habe einen bootloader gefunden der einen externen flash chip benutzen kann um dann damit die ota updates zu machen. und wir haben ja schliesslich einen riesigen :) nvsram chip auf dem board. ich denke man könnte den bootloader sehr einfach so abändern das er statt flash unser nvsram benutzt und dann updates komplett per funk machen ohne isp oder ausbauen des panstamp.
ich hab noch keine ahnung wie aufwändig das ganze ist um es wirklich zum laufen zu bekommen. aber ich denke es wäre es wert hier etwas zeit zu investieren. zumindest um mal rauszufinden wie lange es dauern würde eine neue firmware per swap zu übertragen. vielleicht sogar per broadcast an mehrere devices auf ein mal. über den externen speicher kann das sogar häppchenweise passieren. je nach aufwand den man da rein steckt sogar als deltas.
Hi Andre,
ich würde ja gerne einen nackten ATMEGA2560 benutzen, aber die MiniPins die kann ich nicht löten. Und Andere bestimmt auch nicht. Da bräuchte man schon einen ReflowOfen.
Aber es gibt auch das hier:
https://www.tindie.com/products/jkdevices/atmega2560-breakout-board-arduino-compatible-16mhz-5v/
Nichts desto trotz würde ich schon den ArduinoMiniPro vorziehen. Es sei denn du findest noch ein anderes BreakoutBoard mit vorinstallierten ATMEGA ;)
Bzgl des TSL2561: gibt es ein Problem wenn mehrere I2C Breakout-boards die Pullups mitbringen? Der BMP085 hat 2x 4k7 drauf, der TSL2561 hat auch 2x 4k7 drauf...
Edit: ich hab mir mal ein Video bei Ulrich Radig angesehen bzgl IC´s einlöten:
https://www.tindie.com/products/jkdevices/atmega2560-breakout-board-arduino-compatible-16mhz-5v/
http://thomaspfeifer.net/smd_loeten_tsop.htm
Mich wunderts, das mit dem Lötkolbel völlig ungeniert einmal komplett die Pinseite abgefahren wird und kein Lot 2 oder meherer Pins dabei verbindet ??? ???
ich bin wirklich nicht der lötmeister (ganz im gegenteil :) ) aber ich denke das ich das von hand noch hin bekommen würde. aber du hast recht. für größere stückzahlen mag ich das dann auch nicht mehr machen.
die breakout boards hab ich auch schon gesehen. leider immer ziemlich teuer. und elegant ist es auch nicht.
mal sehen was wir noch finden für die version 2.0 ... mit dem größeren avr könnte halt noch ein paar dinge autonom machen und vor allem die lokale bedienung und konfiguration verbessern. oder das ding ohne den umweg über fhem die heizungsgventile steuern lassen. da hätte ich mit meiner fußbodenheizung tatsächlich mal den vorteil das ich jeweils nur ein paar digital pins in der unterverteilung zum ansteuern der relais für die stellantriebe brauche und nichts schickes das am heizkörper sichtbar ist. oder man könnte auch das größere 2.3'' display mal probieren. oder. oder oder. ...
ich hab beide auf dem breadbord stecken und es gibt noch keine probleme. so viel ich weiss ist der genaue wert der pullups nicht so sehr kritisch zumal die panstamps mit 8mhz laufen und der i2c somit bus weit unterhalb der maximal möglichen geschwindigkeit läuft.
die parallel geschalteten pullups der beiden boards sollten also mit den etwa 2k35 noch im rahmen sein. aber die zusätzlichen pullups auf unserem sensor board selber sollten vermutlich entfallen. wenn es probeme gibt kann man auf einem der breakout boards die verbindung zu den pullups sicher auch durchtrennen.
aber wie immer wenn es um hardware fragen geht: dazu sollte noch jemand anders etwas sagen :)
Hi Andre,
bzgl größerem Display wär das was...
Abgesehen davon bräuchte man mit einem größeren ATMega (warscheinlich mit mehr Sensoren) auch ein größeres Wohnzimmertaugliches Gehäuse. Erst Recht um 2,3" oder sogar 5" TFT da unterbringen zu können.
Hast du da mal etwas in der Richtung gefunden?
um Wieder OT zu kommen. Ich bestelle heute die Teile bei Reichelt und lasse dir mit der Platine zusammen dann ein Set zukommen, incl TGS2600.
Die letzten Punkte die Fehlen sind Imho noch die korrekten Funktionen um von den TGS die ppm Werte ausrechenn zu können.
wenn man das breakoutboard nimmt wird das gehäuse vermutlich knapp. der avr selber könnte noch passen.
bei gehäusen hab ich noch nicht wirklich etwas gefunden. mein favorit ist immer noch etwas zu finden das in einen 1.5 oder 2 einheiten breiten unterputz rahmen passt. so wie die gira wetterstation oder die sprechanlage innen. aber quer montiert. das würde zumindest zu meiner schalter serie passen :). für einen reinen sensor mag sich auch die idee es unter der decke in der zimmer ecke einfach mit einem dreieckigen deckel zu montieren. aber das scheidet natürlich für die version mit display und bedienung aus.
hast du schon eine idee wie du den ausschnitt für das tft in das gehäuse bekommst?
mit der platine kann ich dann auch alles komplett mit den jeweils vorgesehenen pins testen. aber das sollte gehen.
Die Idee mit der UP-Dose finde ich auch gut, aber da gestaltet sich das finden eines geeigneten "Deckels" / Frontklappe schwierig bis unmöglich. Selbst wenn man eine Front aus Alu bei Schäffer machen lässt muss man diese auch irgendwie an der UP-Dose festmachen können.
Ich werde das Sensorgehäuse einfach mit Dremel und feiner Feile für das TFT bearbeiten. Für den RotEnc habe ich eine Ständerbohrmaschine
Edit: habe gerade die Versandmitteilung der Platinen erhalten..... yippiii
Was ist das für ein Gehäuse? Wie groß soll die Stückzahl sein? Ich habe Zugriff auf eine Fräsmaschine, alles händisch. Bez. eine Werkstatt mit CNC. Ich kann da mal fragen, kleiner Dienstweg, eventuell Kaffekasse.....
Es sollte mMn auch eine Version AP geben, nicht jeder haut Löcher in die Wand.
die gira beispiele die ich erwähnt habe siezen zwar in einem up rahmen sind aber aufputz gehäuse. so ähnlich wie der max und hm raum thermostat oder der hm 6 fach taster.
ich habe mir mal für die nächste Version ein paar ATMEGA2560 bestellt..... ich probier es einfach....
bzgl neue Version hab ich mir mal den neuen BMP180 angeschaut. Dieses würde ich gerne für VErsion2 nutzen. Vor allem weil das Stück nur 2€ kostet. Dieses Board hier (http://www.simplelabs.co.in/content/bmp180-pressure-sensor-breakout-board) scheint einen VoltageRegulator drauf zu haben der bis bis 6V kann und auf 3.3 herunterregelt (662k (http://www.datasheetarchive.com/662K+SOT-23-datasheet.html)) Ist aber nicht beschrieben.
Was meint Ihr??
der bmp180 ist der nachfolger des bmp085 und kompatibel. die softwareseite ist also kein problem.
ich hab noch andere breakoutboards gefunden. z.t. auch ohne voltage regulator und zum teil sogar direkt mit lötpads um die pullups zu deaktivieren.
Andre, zeig her... Kannst du auch mit 2€/Stück mithalten? Ist schon ein Kampfpreis...
Die Platinen sind nur noch 100km von mir weg... die müssten heute bei mir eintreffen. :)
ich hab natürlich mal wieder nicht auf den preis geachtet :(
alles was in die nähe deiner zwei euro kommt hat einen voltage regulator mit drauf und keine konfigurierbaren pads. komisch das die mit regulator billiger sind als die ohne...
aber ich habe doch richtig gesehen das man diese mit dem VoltageReg. bis 6V befeuern kann, kann also an 5V dranhängen. Ich denke schon weiter wie man die Komponenten an einen ATMEGA2560 hängen kann. Für den TSL2561 (i2c) und alle anderen 3.3V Komponenten muss ich aber keinen LevelShifter mit einbauen??
der voltageregulator ist nur für vcc. die logik seite ist trotzdem nur 3.3v wenn ich das richtig sehe.
alle i2c Bausteine auf unserem board sind 3.3v versionen d.h. wir brauchen auf dem bus einen level shifter pro richtung wenn es ein 5v avr ist.
für die analogpins sind die widerstände anzupassen. bei den out pins um die leds nicht zu überlasten und bei dein in pins um die volle 10bit auflösung zu bekommen.
das lcd board kommt mit 3.3v oder 5v klar.
beim cc1101 der dann extern nötig ist hab ich noch nicht nachgeschaut.
es gibt vom atmega2560 aber zwei versionen. eine version für 16mhz und 5v und eine für 8mhz und 3.3v.
ich weiss nicht wie gut der 3.3v atmega2560 zu bekommen ist und ob er mehr kostet. aber vielleicht wäre das unterm strich die einfachere variante. die 8mhz reichen ja jetzt auch und man könnte das timing überall beibehalten.
noch etwas: schau mal ins datenblatt für den atmega2560. da müsste ein diagramm sein bei welcher frequenz welche betriebsspannung funktioniert. es könnte sein das auch das 5v modell mit 3.3v arbeitet wenn man auf die 8mhz runter geht.
edit: grad nachgeschaut. die 5v version arbeitet nur runter bis zu 4.5v. die versionen mit einem V arbeiten zwischen 1.8v und 5.5v
noch eine option wäre der atmega1280 statt dem atmega2560. der hat halb so viel speicher läuft aber auch bei 16mhz mit 3.3v
ATMEGA2560V-8AU angeschaut und für gut befunden ;) arbietet sauber bei 8MHZ und 3.3V.
Ist zb. hier (http://microcontrollershop.com/product_info.php?products_id=5614) verbaut.
Kostet auch nur minimal mehr, ist ab knapp 5€/Stück zu bekommen...
sehr gut. und im preise finden bist du auch klasse :)
für die version mit dem atmgea2560 können wir uns noch überlegen wie das programmieren gehen soll:
- ota updates möchte ich auf jeden fall probieren
- wenn der nackte avr aufs board kommt brauchen wir einen isp anschluss zum ersten flashen
- am liebsten hätte ich auch einen (mini-) usb anschluss
eventuell kann man für den avr und für die rtc im nvsram den gleichen gleichen guarz verwenden?
bis zu meinen nächsten wüschen :)
gruss
andre
Ein ISP kommt auf jeden Fall mit drauf. Ist ja jetzt auch schon drauf.
Usb ist nicht geplant, da muss ja zusätzlich ein FTDI-Chip mit drauf... :(
Wenn du ein Schaltungsbeispiel für einen shared-Quarz hast, immer her damit ;)
Ansonsten müssen wir sehen wie die aktuelle Prototypenversion arbeitet. Insbesondere die Schaltungen zu den TGS4161/2600. Da könnten sich ja nooch Anpassungen ergeben. Hast du diesbzgl. schon Formeln eingebaut das du ppm Werte ausgeben kannst? Bis dahin sollte die gemessene Spannung am ADC als Kontrolle ausgegeben werden.
ok... kein ftdi. aber dann pinheader das man den ftdi extern anschließen kann.
alles was nicht direkt angezeigt wird lässt sich per debug mode als raw wert anzeigen.
um die Formel hab ich mich noch nicht gekümmert.
Mich interessiert wozu du du die Pinheader für den FTDI benötigst. Für eine serielle Konsole?
Da ja morgen die Platinen und auch die Bauteile ankommen, kannst du eine kurze Anleitung mir schicken wie ich den Panstamp per ISP flashen muss?
Bisher hab ich dies per ArduinoIDE und Panstamp-Einstellung per Panstick erledigt.
Einen MyAVR ISP-Programmer hab ich da. Allerdings weiß ich nicht wie ich den auf 3.3V umstellen kann...
Edit: MyAVR light: Programmierspannungen 5 V und 3 V (wählbar per Software)
Aber nirgends steht WIE genau :(
ich verwende zur zeit auch noch den panstick. einfach mit dem breadboard verbunden.
den programmier adapter hab ich zwar hier liegen aber mich immer drum gedrückt weil es seriell ohne probleme funktioniert. aber eigentlich sollte es nicht schwierig sein. ich schau am wochenende mal und such alles zusammen.
das mit den 3.3v musst du aber selber rausfinden. meiner hat eine smd 0ohm widerstand den ich entfernen musste.
ich schau mal das ich dir morgen den aktuellen sketch und das fhem modul hier hoch lade.
Hallo zusammen,
habe ab morgen Abend ein paar Tage Urlaub und schaue zu, dass ich Euch einen Abgleich Algorithmus (Hardware) bzw. eine Formel für den CO2 Sensor liefere (als Excel). Falls DJAlex sich noch um den anderen Sensor kümmert, ist das ok. Falls nicht, kann ich mir mal das Datenblatt ziehen und den anderen Sensor auch mal rechnen.
Gruß Peter
PS: Ich lese zwar regelmäßig mit, bin aber etwas "abgehängt" mit Euren Diskussionen. Wäre es nicht mal sinnvoll, für die V1.1 eine Dokumentation zu machen (zumindest für die Hardware)?
Zumindest für den Umweltsensor habe ich für mich eine Kurzdoku gemacht, damit ich noch weiß, was ich mal aufgebaut habe ...
Hallo,
Ohne das ich Ahnung hätte, werfe ich mal so den teensy 3.1
Hat zwar nen MSP aber mehr Power und ist Arduino kompatibel und hat ne Menge mehr Pins zu bieten bei ca. 20,- Euro Kosten.
Und wech geduckt.
Stefan
Gesendet von meinem iPad mit Tapatalk HD
ich war ungeduldig :) das flashen per isp funktioniert. ich schreibe morgen mal alles zusammen.
@Porky666: die schauen nicht schlecht aus aber der engpass ist nicht die rechenleistung sondern vor allem der programmspeicher. für alles was nicht avr ist müsste man einige low level dinge wie die schnittstelle zum cc1101 zumindest anfassen wenn nicht sogar neu machen. ohne wirkliche not muss das noch nicht sein :). und tobias 5 euro für den avr sind schon schwer zu schlagen. auch wenn noch ein bischen kleinkram drum rum dazu kommt.
Peter: ich werde analog dem Umweltsensor auch hierzu einen Wiki-Beitrag erstellen. Incl. der Bauteilaufschluesselung.
Edit: Habe den MySmart USB light nur mit dem WindowsTool auf 3V umgestellt bekommen :(
Hab gestern die einzelnen Platinen aus dem PCB-Board mit dem Fräser getrennt.
Mir sind schon ein paar Punkte aufgefallen:
1) Aus irgendeinem Grund fehlen die Bauteilnamen auf der Oberseite :(
2) die Bohrlöcher des Panstamps sind zu klein. Hier MUSS eine Buchsenleiste verbaut werden.
3) das BMP-BreakoutBoard ist zu groß. Da muss oben ca 5mm abgeflext werden. Dort sind aber keine Leiterbahnen
4) den Lochabstand des DHT22 hab ich aus einem Manual mit 2mm. Ensprechend auch so designed. Tatsächlich hat meiner aber einen Pinabstand von 2.54mm. Egal, müssen die Pins etwas gebogen werden.
5) die Befestigungslöcher für das Gehäuse müssen noch geringfügig verschoben werden.
Hier mal zwei Bilder. Auf dem zweiten ist zusätzlich noch die Adapterplatine für den RotEnc (in 3facher ausführung) zu sehen.
Wenn Du den Panstamp auf eine Buchsenleiste setzt, ist doch drunter noch jede Menge Platz für verschiedene "neue" Teile (Potis, mehr Widerstände usw);-)
Und willkommen im Team was die Unstimmigkeiten eines Layouts betrifft. Eigene leidvolle Erfahrung. Aber deswegen gibt es ja Prototypen.
Ich bin ja schon weg.
das mit der buchsenleiste finde ich kein nachteil. dir austauschbarkeit und der platz darunter sind gut.
ansonsten schaut es schon ziemlich gut aus finde ich.
so gut das ich gerade darüber nachdenke wie es wäre noch ein gegenstück zu machen das 8 schaltausgänge hat und direkt in die unterverteilung der fußbodenheizung kommt. mit einem etwas erweiterten sketch wäre das eine perfekte autonome steherung für fußbodenheizungen. man könnte dann jeweils die heizkreise an den zugehörigen thermostaten anlernen. das gibt es so glaube ich noch nirgends. und mit dem passenden fhem modul ist es auch da perfekt integriert.
Hallo zusammen,
bin gerade nochmal am Rechnen und habe festgestellt, dass der Offset (IC10B) an 5 V hängt. Habe ich übersehen, würde ich in der nächsten Version eher an 3,3 V hängen. Sollte aber (hoffentlich) kein Problem sein, denn wir können den zweiten Verstärker unsymmetrisch machen.
Tobias: Hast Du da ein paar Werte der Widerstände zum probieren da?
Ich habe es ja schon vorhergesagt, dass ich vermutlich eine Platine brauche, um meine Rechenbugs auszuräumen ???
Gruß Peter
Wie werden beim Panstamp die "unteren" Kontakte verbunden? An sich ist das Teil doch wie ein 24 füßiger IC, oder?
da muss dann auch eine stiftleiste dran gelötet werden.
@andre: das mit der unterverteilung können wir machen, aber IMHO erst wenn wir aus der Prototypenphase raus sind
@PeMue: ich kann dir eine Platine zukommen lassen, kein Problem. Nur einen Panstamp und die ganzen Sensoren hab ich keine frei.
Ansonsten ist gestern die Reichelt Bestellung eingetroffen. Habe die ganzen Platinenbauteile 10fach bestellt, für 10 Platinen. Lege dir ein Set zu.
ja klar muss das board erst mal fertig sein.
aber je länger ich darüber nachdenke um so besser gefällt mir die idee. die logik der steuerung kommt in die unterverteilung und die empfängt die ist temperatur vom sensor board und man kann die soll temperatur und andere parameter über das sensor board und fhem konfigurieren. im prinzip fast so wie die max oder hm Thermostate.
Zitat von: justme1968 am 17 April 2014, 11:51:31
ja klar muss das board erst mal fertig sein.
aber je länger ich darüber nachdenke um so besser gefällt mir die idee. die logik der steuerung kommt in die unterverteilung und die empfängt die ist temperatur vom sensor board und man kann die soll temperatur und andere parameter über das sensor board und fhem konfigurieren. im prinzip fast so wie die max oder hm Thermostate.
Vorlage wäre das 1wire Board von UweH welches 8 Schaltausgänge ansteuert. Nur anstatt 1wireChip ein Arduino. Da kann man ja wieder einen einfachen Arduino Mini aufstecken. Aber wie gesagt, ich möchte dieses Board hier erstmal fertig bekommen, incl version 2. Dieses Schaltboard ist dann nur noch eine Fingerübung.... sowohl Layout- als auch Firmwaremäßig
Zitat von: Tobias am 17 April 2014, 11:25:12
@PeMue: ich kann dir eine Platine zukommen lassen, kein Problem. Nur einen Panstamp und die ganzen Sensoren hab ich keine frei. Ansonsten ist gestern die Reichelt Bestellung eingetroffen. Habe die ganzen Platinenbauteile 10fach bestellt, für 10 Platinen. Lege dir ein Set zu.
Lass mal vorläufig, ich mach das mal per Fernkurs ;)
Zudem weiß ich nicht, wie Ihr die Daten wegfunkt (slowrf, MAX, Homematic oder ?)
Nach einigen Kannen Kaffee und dem heutigen Vormittag, habe ich mal ein Ergebnis.
Grundlagen des Ganzen ist die Nernst-Gleichung (http://de.wikipedia.org/wiki/Nernst-Gleichung), habe ich mir aber nicht wirklich angeschaut, da nicht mein Themengebiet.
Im Anhang mal mein erweitertes Berechnungsblatt.
Definition:- "gute Luft" hat 350 ppm CO2 Konzentration (keine Anhnung, ob das immer so ist)
Vorgehen Hardware:- TGS4151 und Verstärker mit Werten wie im Schaltplan einlöten, am Ausgang von IC10B bei "guter Luft" den Pegel messen
- sollte dieser zu hoch sein (>2,3 V) muss der R16 erhöht werden (bis 47 k müsste gehen), dann sollte die Spannung nicht kleiner als 1,2 V sein
Damit sollte die Hardware erledigt sein, mit der Offsetspannung an IC10B von 3,3 V (Vorschlag zur Änderung in V2) sollte das Thema etwas entschärft sein, ist auch schon als Parameter in der Excel Tabelle mit drin.
Vorgehen Software:Die Software muss bei "guter Luft" der Offset des Sensors messen und speichern. Auf diesen Wert bezieht sich dann die folgende Berechnung. Wenn ich mich nicht verrechnet habe, müsste die Gleichung die folgende sein:
conc = e^((erg + 599)/103)
wobei conc die CO2 Konzentration in ppm und erg das Ergebnis der A/D-Wandlung ist.
Allerdings kann vermutlich der Atmel keine E-Funktion, aus meiner Sicht haben wir mit den Toleranzen des Sensors auch eine wahnsinnige Streuung. Ggf. brauchen wir noch einen Referenzwert bei 1000 oder 1500 ppm, die Frage ist nur wie ...
Schaut es Euch mal an und gebt mir Feedback, vor allem der Hardwareteil interessiert mich 8)
Gruß Peter
Edit1: Klammer ergänzt ...
Edit2: Hier (http://www.zwoenitz-wetter.de/html/co2_aktuell.html) kommen vermutlich die 350 ppm her. Und als Referenz (http://www.pluggit.com/portal/de/co2-der-wichtigste-indikator-fuer-dieluftqualitaet-154) könnten wir ja ein ungelüftetes, kleines Schlafzimmer für den zweiten Abgleichpunkt der Steigung nehmen 8)
Edit3: Lookup-Table im Berechnungsblatt hinzugefügt. Ggf. habe ich noch einen Denkfehler bei Sensoren mit min. bzw. max. Abweichung drin, geht aber tendenziell dazu, dass momentan der worst case abgebildet ist.
Edit4: Dokumentation aktualisiert.
exp gibt es in math.h. ich muss mal schauen wie viel speicher das frisst und ob eine fixed point approximativen besser ist.
die fehlende klammer kommt vermutlich ganz ans ende?
gruss
andre
Ich muß doch noch mal nachfragen: Sollte am Ausgang IC10B nicht die größtmögliche Spannung (knapp 3,3V) stehen, damit wir bei steigender CO Konzentration (der Wert geht gegen Null) einen möglichst größen Arbeitsbereich haben?
Je kleiner die Ausgangsspannung ist, um so kleiner ist doch der Arbeitsbereich, den der Panstamp (oder künftige Prozessoren) auswerten können.
Hi Gerhard,
der zweite Verstärker ist rumgedreht, daher ist die Kennlinie wieder positiv ...
Sprich:
Ausgangsspannung2 = v1*Referenz(5V) -v2*Ausgangsspannung des ersten
Gruß Peter
Sorry, hab ich übersehen :-))
Dann wäre ein Poti vielleicht doch nicht so schlecht.
Tobias hat ja jetzt unter den Panstamp Platz (he,he)
Hab mal eine BauteilListe der Version 1.1 erstellt. Der WikiTeil kommt später...
Zitat von: stgeran am 17 April 2014, 14:16:06
Dann wäre ein Poti vielleicht doch nicht so schlecht.
Tobias hat ja jetzt unter den Panstamp Platz (he,he)
Gebt mir eine funktionierende Schaltung und ich baue Sie ein... :) So wie ich das sehe bewegen wir uns nahe meiner ursprünglich geposteten Schaltung von Seite 3 (http://forum.fhem.de/index.php/topic,20956.msg153350.html#msg153350)....???
(http://forum.fhem.de/index.php?action=dlattach;topic=20956.0;attach=13800)
... ist doch schön, das auf Umwegen dasselbe rauskommt ;)
Aber mal im Ernst: ich habe diese Schaltung glatt übersehen. Würde aber trotzdem kein Poti einbauen wollen, da diese sich ganz anders über der Temperatur verhalten, als Festwiderstände. Ich denke, wenn das mit dem Offset funktioniert, sollten wir schauen, wie wir einen Referenzwert bei höherer CO2 Konzentration hinbekommen. Gut ist, dass der Grenzwert sowieso im Bereich zwischen 1000 und 1500 ppm liegen sollte, da haben wir eine akzeptable Genauigkeit.
Gruß Peter
Also lass und mal sehen wie die aktuelle Schaltung funktioniert und was an Ergebnissen herauskommt. Danach machen wir auf Grundlage der Ergebnisse eine optimierte Schaltung :)
Ich versuche heute abend die ersten SMD-Widerstände drauf zu löten...
Ich erinnere mich aber, daß Du danach aber mit einer "abgespeckten" Schaltung ankamst. Und auf der haben wir wieder aufgebaut.
Zitat von: stgeran am 17 April 2014, 15:16:03
Ich erinnere mich aber, daß Du danach aber mit einer "abgespeckten" Schaltung ankamst. Und auf der haben wir wieder aufgebaut.
Ja korrekt ;) Nur als du den Poti erwähnt hast ist mir dieses Beispiel sofort wieder eingefallen ;)
Hallo Tobias,
wo läßt Du eigentlich Deine Leiterplatten fertigen? Ich denke, ich werde demnächste auch was brauchen ...
Danke + Gruß
Peter
unterschiedlioch, zurZeit hier: http://www.dfrobot.com/index.php?route=product/product&path=135_134&product_id=718
ich schaue mir gerade deine formel an....
kann es sein das du mit 8 bit auflösung bzw. werten des a/d wandlers zwischen 0 und 255 rechnest? jedenfalls bekomme ich jeweils etwas in der nähe von 0 bzw. 255 wenn ich 350ppm bzw 3500ppm in die funktion stecke und rückwärts rechne.
wir haben aber 10 bit Auflösung. d.h. werte zwischen 0 und 1023.
gruss
andre
Hallo Andre,
nein, passt schon. Der ausgenützte Bereich ist im Mittel 778 mV Differenz zwischen 350 und 3500 ppm. Sprich wir bewegen uns im Bereich von 800 mV bei einem max. Bereich von 3,3 V. Dies entspricht in etwa dem Faktor 4 und somit dem von Dir beobachteten 8 versus 10 bit.
Da die Sensoren aber bei 350 ppm eine starke Streuung haben, liegt der Wert irgendwo. Daher muss ja auch der Nullpunkt (350 ppm) bei jedem Sensor extra festgelegt werden.
Gruß Peter
ok.
wenn die korrektur/kalibrierung nur linear als offset ins ergebnis eingeht ist ziemlich sicher eine lookuptable die platzsparendste lösung.
selbst wenn ich nicht auf jedes bit achte und einfach 8 bit auf 16 mappe brauche ich 512 byte. die kann ich ohne probleme ins eeprom stecken und mit flashen.
da braucht die berechnung sicher mehr speicher. egal wie sehr optimiert. und langsamer wäre es auch.
gruss
andre
Hallo André,
habe mal die Lookuptable hier (http://forum.fhem.de/index.php?action=dlattach;topic=20956.0;attach=14499) eingefügt. Das mit den 512 Bytes könnte hinkommen. Allerdings könnte man auch bei Werten über 2000 ppm linearisieren, da stimmt dann der Sensor sowieso nicht mehr ...
Tobias ist gerade so schweigsam, vermutlich funktionieren die Verstärker noch nicht :P
Gruß Peter
perfekt. das hatte ich eigentlich heute vor :)
zum platz sparen könnte man auch 12bit fürs ergebnis verwenden und die nibble packen. das spart 1/4. wie viel das linear interpolieren spart probiere ich mal aus.
beides führt aber wieder zu größerem code. könnte also unterm strich nach hinten los gehen. zumal der eeprom platz noch völlig unkritisch ist. der flash ist der engpass. also die code größe.
ich könnte auch das nvsram verwenden. da ist noch viel mehr luft. da kann ich aber nur über einen laufenden sketch hin schreiben. nicht beim flashen. das würde dann auf einen zusätzlichen sketch zum initialisieren der lookup table hinauslaufen. das ist zwar kein problem aber unpraktisch. also erst etwas wenn es noch enger wird.
gruss
andre
hier eine erste vor alpha version der software.
- indoorsensor.tar.gz: alle (ich hoffe :) ) quelltexte für den sketch
- devices.xml das aktualisierte devcices file -> nach .../FHEM/lib/SWAP
- indoorsensor.xml -> das device description file für das sensor board -> nach .../FHEM/lib/SWAP/justme
- 35_SWAP_0000002200000008.pm das fhem modul -> nach .../FHEM
kompilieren zur zeit nur per ino tool.
wichtig: in src/config.h jeweils alle pins anpassen. zur zeit ist meine breadboard config drin. die ist anders als die auf dem board
in src/sketch.ino in zeile 39ff lassen sich einige defaults konfigurieren. die beschreibung steht in src/config.h
das fhem modul kann zur zeit nur 'set desired' und 'set text'. der text ist nur einzeilig. also nur 7 Buchstaben.
noch ein paar anmerkungen:
- die große loop soll noch auf eine state machine umgestellt werden. das macht das erweitern später einfacher
- bei den libs lässt sich vermutlich noch etwas platz sparen. da hab ich nicht nicht geschaut
- die helligkeit wird noch nicht in lux übertragen. mit dem temt6000 ging das ja nicht. mit dem TSL2561 schon.
- das senden von messwerten sobald eine bestimmte änderung erreicht ist ist noch nicht eingebaut
gruss
andre
So, heute abend wieder 1h dazu gekommen. Ihr wisst ja, Feiertage, Family usw...
So sieht das Board jetzt aus, der Panstamp ist noch nicht programmiert...
Edit: CY14x101I.h fehlt.....
Und damit ich sketch.ino in der IDE laden kann muss ich es auf indoorsensor.ino umbenennen sowie src/ auch in "indoorsensor" umbenennen
... und wo ist der CO2 Sensor? Und der OP ist auch noch nicht bestückt? ;D
Ich bin echt gespannt auf die Spannungswerte 8)
Gruß und schöne Ostern
Peter
Will erst sehen ob es grundsätzlich läuft. Der Sensor ist zu teuer um sofort in Rauch aufzugehen ;)
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
ich komme mit dem Sketch noch nicht weiter... Das unterverzeichnis "lib" habe ich in den den Arduino-IDE unterordner "libraries" kopiert, IDE neu gestartet aber in sensor.h gibts den Fehler das adafruit_BMP085.h nicht gefunden wird.
Für CY14x101I habe ich unter "libraries" einen neuen Order angelegt und die beiden Dateien (h/cpp) dahin verschoben.
Edit: Habe jetzt alle Sensoren und sonstige die #define HAS_xxxx auskommentiert. Bei TFT gibt es gleich einen Fehler in der PRozedur initHomeScreen, logisch, TFT-Library ist ja auch nicht geladen.
Ansonsten findet er nicht eine einzige der neuen Libraries die ich nach library kopiert habe, incl IDE NEustart :( In der IDE unter Sketches->Library importieren werden die einzelnen neuen libraries aber angezeigt. Den BMPTest-Sketch der in der Library enthalten ist wird auch sauber kompiliert.
Bin gerade etwas ratlos...
das ist genau das, was ich an der Arduino IDE noch nicht verstanden habe :-\ In "Standard C" bindet man die Quelltexte ein und gut ist es, bei Arduino kopiert man etwas irgendwo hin und hofft, das es geht ...
Gruß Peter
du musst nichts hin und her kopieren (davon hatte ich ja auch nichts geschrieben. sondern das es nur mit dem ino tool geht :) ). einfach das ino tool im indoorsensor verzeichnis verwenden.
alle libs werden zuerst im lokalen lib verzeichnis gesucht.
das ist einer der vorteile vom ino tool.
für die ide hättest du den inhalt des lib verzeichnisses ins entsprechende ide verzeichnis kopieren müssen. nicht das verzeichnis selber. aber meine versionen haben zum teil änderungen.
das eigentliche problem mit der ide ist eher das Konzept der ino files. dir werden alle zusamenkopiert und automatisch prototypen deklariert. und das funktioniert nicht zu erlässig. ich würde auch lieber make direkt verwenden. dann muss ich mir aber gedanken machen wo jeweils die avr tools installiert sind. das ist zwar ok bei meinen eigenen systemen. aber nicht wenn noch jemand anders selber kompiliert.
ich glaube das ino tool ist eigentlich ein ganz guter kompromiss. es gibt halt (leider) keine windows version.
es kann sein das du das tft noch nicht rauskonfigurieren kannst. das hatte ich noch nicht probiert. da sind sicher noch nicht alle abhängigkeiten berücksichtigt.
gruss
andre
ich hab eben gesehen das ich in dem tar file oben noch zwei libs vergessen hatte.
das file ist jetzt aktualisiert und ich hab auf einem 'nackten' rechner noch mal getestet. einfach in das indoorsensor verzeichnis gehen und 'ino build' sagen.
zum flashen mit panstick im ino.ini file das richtige device angeben und mit 'ino upload' flashen
zum flashen mit isp programmer im 'f' script den avrdude pfad und die parameter anpassen und './f' aufrufen.
gruss
andre
hmm, bekomme diese Fehler hier....Robot_Control/ArduinoRobot.cpp
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp: In constructor 'RobotControl::RobotControl()':
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp:8: error: 'LCD_CS' was not declared in this scope
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp:8: error: 'DC_LCD' was not declared in this scope
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp:8: error: 'RST_LCD' was not declared in this scope
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp: In member function 'void RobotControl::begin()':
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp:18: error: 'MUXA' was not declared in this scope
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp:18: error: 'MUXB' was not declared in this scope
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp:18: error: 'MUXC' was not declared in this scope
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp:18: error: 'MUXD' was not declared in this scope
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp:19: error: 'MUX_IN' was not declared in this scope
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp:22: error: 'BUZZ' was not declared in this scope
/usr/local/share/arduino/libraries/Robot_Control/ArduinoRobot.cpp:25: error: 'Serial1' was not declared in this scope
make: *** [.build/panstamp/Robot_Control/ArduinoRobot.o] Fehler 1
Make failed with code 2
tobias@laptop:~/sketchbook/indoorsensor$
das scheint ein problem mit der 1.0.5 version der ide zu sein.
lösch einfach /usr/local/share/arduino/libraries/Robot_Control (ich vermute mal die brauchst du eh nicht) oder nimm die 1.0.4 version der ide.
das problem scheinen noch einige andere in zusammenhang mit der tft lib zu haben.
gruss
andre
ok, jetzt kompiliert es durch... War nur ein Test. Ich muss die Pins noch anpassen und ich weiß niht ob ich das heute noch schaffe. Zuvor muss ich heute abend aber die restlichen Bauteile für die Luftgütesensorik auflöten (ohne den CO2 Sensore selbst) damit das LötEquipment aus der Küche wieder in den Keller kann ;)
Zitat von: Tobias am 19 April 2014, 17:27:49
Zuvor muss ich heute abend aber die restlichen Bauteile für die Luftgütesensorik auflöten (ohne den CO2 Sensor selbst) damit das LötEquipment aus der Küche wieder in den Keller kann ;)
Dann einfach mal die Platine an Versorgungsspannung hängen und 0,5 V an den Eingang des OPS des TGS4161 anlegen. Dann sollte der Ausgang vom zweiten Verstärker bei etwa 1,4 V sein.
Wenn das so ist, war meine Rechnung gut ;D
Hi Andre,
in der Datei ino.ini habe ich das device auf /dev/ttyUSB1 geändert. Das ist mein Panstick. Allerdings kommt mit "ino upload":
avrdude: stk500_recv(): programmer is not responding
Edit: Vergiss es... ich war zu blöd den Panstamp in den Panstick richtig herum einzustecken :(
Edit2: zum Anpassen der Cponfig.h hier noch der aktuelle Schaltplan mit den korrekten Pins
in der letzen hochgeladenen version ist auch die lookup table schon drin. vorläufig noch direkt mit im programmcode im flash.
wenn USE_TGS4161_lookup definiert ist wird sie schon verwendet. allerdings noch ohne kallibrierung und mit auf 8bit geshiftetem a/d wert.
gruss
andre
Ich habe gerade die Pins angepasst. Kann das sein das die RGB-LEDś s noch nicht dabei sind?
Ev. könnte man noch optimieren das alle config in config.h passiert. Der DHT ist noch in sensor.h ;)
Du hast beim BMP einen Offset eingebaut, unterschiedlich ob ein Wert remote vom TempPress empfangen wird oder von einem anderen IndorrSensor. Was ist denn das?
Der erste Funktionstest werde ich aber erst heute abend hinbekommen...
ja. dir rgb led ist noch nicht dabei. aus dem breadboard hatte ich die pins noch nicht frei.
dht und bmp werden noch in sensor konfiguriert. das sind die überbleibsel aus dem temphumpress sketch. aber wie verwenden die gleichen pins. es sollte als ohne änderungen gehen und das aktivieren sollte schon über config.h gehen. es ist noch nichts optimiert oder audgeräumt. das kommt noch.
das ist der offset wo in der nachricht der luftdruck steht. je nach absender ist das unterschiedlich. da kannst du alles lassen wie es ist.
alles was an offset konfigurierbar ist machst du im constructor vom config. so etwa zeile 35 von sketch.ino. die erklaerung steht in config.h. du siehst z.b wie hoch ich wohne :)
gruss
andre
Erster Test. DebugLED ist aktiviert. Habe ein dauerleuchten. Dasselbe im panstick mit dem Sketch. Kommt mir bekannt vor. Hatte ich mit den den bodefeuchtesensoren auch. Sind auch hier die Register noch nicht korrekt initialisiert??
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
siehst du auf fhem seite etwas im log file? wenn du verbose auf 4 setzt?
wenn die led an bleibt bedeutet das für meinen sketch das die setup() routine nicht beendet wird.
am besten kommentierst du in setup() mal alles aus bis auf das ein und aus schalten der led und aktivierst dann nach und nach wieder ein stückchen.
ich schau noch mal im sketch ob mir was auffällt.
ansonsten schick mir mal deine config und ich kompiliere eine version für dich. es gab auch schon mal probleme mit der compiler version.
gruss
andre
Bin jetzt bis heute abend außer haus... Schick dir heute abend das config.h file.
Komme auch erst heute abend wieder zum testen. Mit fhem habe ich es noch nicht verbunden. Ist noch ein standalone-Sensor.
Ach nochwas: das TFT ist noch nicht am 10er PinHeader angeschlossen, ev. hängt der sketch deshalb? BMP und TGS4161 fehlt auch noch, ist aber im sketch auskommentiert.
ich hab keine ahnung was in der aktuellen version ohne tft passiert ...
das TFT kommt als nächstes dran... ich habe mal in meinem letzten Beitrag ein aktuelles Bild gepostet...
Zitat von: Tobias am 20 April 2014, 10:41:16
BMP und TGS4161 fehlt auch noch, ist aber im sketch auskommentiert.
Du läßt mich ganz schön schmoren ;D
Schöne Ostern.
Gruß Peter
Edit: Habe mal die Dokumentation (http://forum.fhem.de/index.php?action=dlattach;topic=20956.0;attach=14588) aktualisiert.
Peter, sorry... komme gerade aufgrund der feiertage nur morgens mal 30min und abends mal 1h dazu :(
Bis auf den TGS4161 sind aber alle Bauteile jetzt drauf. Sobald der Panstamp sauber arbeitet kommt als nächstes nach dem TFT der TGS4161 drauf! Du bist der Erste der die Testergebnisse bekommt :)
Kein Problem, ich dekodiere gerade den RS485 Datenstrom meines SolarZählers. Die Dokumentation des Herstellers ist, naja, etwas kryptisch ... >:(
So, TFT angebaut aber keine Besserung :(
Im Anhang mal meine angepasste config.h und sensor.h sowie das hexfile was auf dem Panstamp läuft (oder auch nicht)
Irgendwie funktioniert die Programmierung per ISP nicht:
avrdude -c stk500v2 -P /dev/ttyUSB1 -p ATmega328P -v -U flash:w:.build/panstamp/firmware.hex
avrdude: Version 5.11.1, compiled on Oct 30 2011 at 10:37:28
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "/etc/avrdude.conf"
User configuration file is "/home/tobias/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : /dev/ttyUSB1
Using Programmer : stk500v2
AVR Part : ATMEGA328P
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PC2
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff
flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff
lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
Programmer Type : STK500V2
Description : Atmel STK500 Version 2.x firmware
Programmer Model: STK500
Hardware Version: 3
Firmware Version Master : 2.10
Topcard : Unknown
Vtarget : 0.0 V
SCK period : 3.3 us
Varef : 0.0 V
Oscillator : Off
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.98s
avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
tobias@laptop:~/sketchbook/indoorsensor$
ok... ein schritt nach dem anderen:
- wenn das tft nicht dran hängt oder nicht initialisiert werden kann bleibt der sketch hängen. hab ich eben geprüft.
- was genau ist auf dem tft zu sehen? geht das hintergrundlicht an?
- ich habe eben gesehen das im schaltplan redet vom tft noch d0 liegt. ich hab es immer fest auf vcc liegen. die lib sollte das zwar automatisch richtig machen aber wer weiss.
- wenn der isp programmer auch nicht geht stimmt vermutlich mit spi bus etwas nicht.
- die meldung vom programmer deutet darauf hin das der panstamp nicht erkannt wird.
- wenn du beim avrdude kommando alles hinter dem -v weg lässt wird nur geprüft ob der avr erkannt wird.
- selbst wenn der avr nicht erkannt wird sollte bei dem versuch zumindest ein reset ausgelöst werden. d.h wenn die led vorher an war sollte sie zumindest kurz aus gehen.
gruss
andre
Beim TFT passiert rein garnichts. Sollte das Backlight angehen wenn GND und VCC verbunden wird? Ich werde mal heute abend durchmessen.... Das hex file läuft bei dir aber?? Sprich die LED geht aus?
das backlight geht erst an wenn an light vcc oder ein pwm signal anliegen.
wenn dann nur schwarz zu sehen ist geht die datenverbindung noch nicht. also spi oder cs oder c/d.
lass mal cs für den card reader nicht verbunden.
ich mach dir nacher mal ein hex file fertig.
gruss
andre
mir ist gerade aufgefallen das wir (ich :() bei den analog pins mist gemacht haben...
A6 und A7 sind die beiden einzigen analog pins die man nicht als digital pins verwenden kann. d.h. der encoder geht genau da nicht!
ich würde vorschlagen voc und co2 von A1/A3 nach A6/A7 zu legen und den encoder von A6/A7 nach A1/A3.
ansonsten kommentiere mal entweder das HAS_CY14x101I aus oder das DEBUG_BRI. die beiden vertragen sich scheinbar in der aktuellen version nicht. ich weiss noch nicht warum.
gruss
andre
noch etwas: du kannst natürlich nicht die led (für led debug) und den button gleichzeigt an pin4 verwenden. entweder oder.
angehängt eine minimal version bei der nur das tft angesteuert wird. alles andere ist deaktiviert.
gruss
andre
Pin D4 ist doch per Jumper entweder mit der LED oder dem Button verbunden. Bei mir die LED.
Deine Minimalversion funktioniert. Das TFT Backlight geht an. Die LED blinkt nach dem Reset Button Push kurz auf :)
Gib mir mal bitte deine beiden config files. Nicht das das make nicht sauber funktioniert.
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
ja. ist es aber du darfst im sketch dann auch nur entweder oder konfigurieren. also led debug nicht setzen wenn der button auch auf pin 4 konfiguriert ist.
du soltest auf dem tft auch etwas sehen.
wenn nur das backlight an geht und nichts zu sehen ist geht die spi kommunikation oder cs oder c/d oder reset nicht.
wenn der isp programmer auch nicht geht ist es vermutlich spi.
gruss
andre
Ich versuche es heute abend anhand des ISP-Programmers herauszufinden wo es am SPI hängt...
Edit: Ich kann im Layout keinen Fehler feststellen... bin gerade ratlos warum es nicht funktioniert...
Andre: hab dir eine Platine incl Bauteilset zugeschickt... ev. findest du parallel etwas...
ich hab gestern mit dem zusammen bau angefangen.
aber da gerade gewitter war hab ich den gewitter sensor noch mit dem sketch zum laufen gebracht:http://forum.fhem.de/index.php/topic,15319.msg162818.html#msg162818 (http://forum.fhem.de/index.php/topic,15319.msg162818.html#msg162818). ohne gewitter ist das fast nicht zu testen.
der sketch wird zwar zu gross wenn man bmp805 und den AS3935 gleichzeitig bedienen will, das ist aber kein problem. es reicht ja ein bmp pro installation und ein AS3935. und die geräte tauschen sich wie gehabt untereinander aus. d.h. das sollte als option für die nächste version mit drauf. im gegensatzu zur elv version kann man damit auch die geschätzte entfernung an fhem übertragen.
gruss
andre
Zitat von: Tobias am 22 April 2014, 07:23:57
Ich kann im Layout keinen Fehler feststellen... bin gerade ratlos warum es nicht funktioniert...
Hallo Tobias,
soll ich mal schauen? Wenn Du mir sagst, was genau nicht geht, könnte ich mich des Themas mal annehmen ...
Gruß Peter
Hi Peter
Die spi Kommunikation klappt nicht. Also ISP Programmierung und TFT. Finde keine VerdrahtungsFehler. Könnte also nur ungünstig layoutet sein das etwas stört :( Kenne jetzt aber keine speziellen Spi Layout regeln
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
achso, hier mal das TargetFile...
Wenn es LAyoutregeln für den SPI-Bus geben sollte muss ich diese für V2 berücksichtigen... ich habe nämlich keinen blassen Schimmer warum die ISP-Programmierung nicht funktioniert. Die gleiche Verdrahtung per fliegendem Kabel funktioniert...
Hallo Tobias,
habe mir mal den Taget Viewer geholt und das Layout des SPI angeschaut.
Folgende Fragen:
- Wenn Du den ISP Programmer dran hast, wird da die Schaltung über den Programmer versorgt?
- Ist der Panstamp auf Stifleisten und kann abgezogen werden?
- Am SPI hängt der Panstamp (und darauf der CC1101) bzw. das TFT, mehr nicht, oder?
- Welche SPI (http://de.wikipedia.org/wiki/Serial_Peripheral_Interface) Verkabelung hast Du gewählt? Ich vermute mal sternförmig und die unterschiedlichen Devices haben unterschiedliche Chip Selects (bis auf den ISP, welchen CS hat der?).
- Ich habe den Schaltplan vom Panstamp nicht genau angeschaut, aber ich vermute mal, dass da auf der Versorgungsspannung ein Pufferkondensator (100 nF oder größer) drauf ist. Den Pullup an der Resetleitung habe ich gesehen.
- Ich vermute mal, dass auf dem Panstamp ein Arduino Bootloader drauf ist.
Mir ist aufgefallen, dass die 3,3 V Leitung quer über die Platine führt. Ich hätte diese eher sternförmig verdrahtet, und zwar so, dass beide Einspeisepunkte ähnlich berücksichtigt werden (kurze Leitungen).
Ich würde folgendes versuchen:
- Panstamp ausstecken, ISP über Adapterkabel (an den Stifleisten) anschließen und probieren, ob Auslesen/Programmieren möglich ist. Wenn nein -> Panstamp defekt.
- Wenn ja: Panstamp wieder draufstecken, TFT Display ausstecken, ISP anschließen und mal die Versorgungsspannung am ISP und am Panstamp messen, diese sollte max. 0,2 V differieren. Probieren, ob Auslesen möglich. Wenn nein, liegt es (irgendwo) am Layout. Die Leitungen SCK/MISO/MOSI sind etwa gleich lang, die Masse ist großflächig, nur die Versorgungsspannung scheint mir etwas "lang und dünn".
Ich wünsche Dir mal viel Erfolg.
Gruß PeMue
hallo peter,
kurz das was ich dir dazu sagen kann:
- auf dem board hängen nur panstamp (mit cc1101) und tft am spi bus. auf meine breadboard habe ich noch den gewitter sensor dran.
- die 'verkabelung' ist sternförmig bzw. ein bus mir unterschiedlichen cs. der isp hat kein eigenes cs.
- es ist ein arduino bootloader drauf
ich habe das board inzwischen zwar fast fertig gelötet, teste aber immer noch mit den breadboard. da geht bis jetzt alles.
gruss
andre
Hallo zusammen,
kann man an das Board irgendwie einen PIR anschliessen? Würde gern was ähnliches wie den Airwick RoomNode mit dem Panstamp bauen.
Gruss Björn
für die nächste version ist einer vorgesehen.
gruss
andre
Männer, wie sieht es aus? Gibt es news oder wehrt sich das Teil??
Ich bin am neuen Layout mit einem mega2560 dran. Bin gerade beruflich etwas mehr eingespannt. Will das teil aber unbedingt auch weitermachen. Leider ist die Ursache der spi buskommunikationsfehler nicht bekannt :(
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Hi Andre,
hatte heute mal wieder mehr Zeit gehabt und auf einer nackten Platine nur Panstamp und ISP/TFT Connector aufgesetzt. ISP-Programmierung klappt, aber das TFT bleibt dunkel...
Ich nutze dieses Sketch: http://forum.fhem.de/index.php/topic,20956.msg161142.html#msg161142
In FHEM kommen Messwerte aber an... Die DesiredTemp kann ich per "set ..." auch setzen.
Leider kann ich aus dem Sketch den NVSRam nicht herausoperieren. Deaktiviere ich das Define und die folgenden 2 Zeilen gibts in sensor.h einen fehler.
Und mit NVSRAM (ohne physischem Baustein) fährt der Panstamp garnicht hoch, bzw kommen keine Messwerte in FHEM an
wenn das LCD nicht an geht ist oft die reset Leitung das problem. die sollte fest auf 3.3v. du kannst auch mal die beleuchtung fest auf 3.3 legen.
wenn du den nvsram baustein auskommentierst verwendet der sketch satt dessen das eingebaute eeprom. es kann aber sein das die gepostete version das tatsächlich nicht kann.
ich habe im sketch das problem das nur noch so wenig speicher frei ist das ich fast keine fehler zu nicht vorhandenen bausteinen abfange. d.h. ein einkonfigurierter baustein muss (fast) immer auch da sein.
ich wollte mich am wochenende auch wieder dran setzten. ich packe dann noch mal eine aktuelle version zusammen.
gruss
andre
Im neuen Layout liegt Reset auch fest auf VCC
Ich denke du brauchst nicht mehr auf panstamp-Basis sondern kannst gleich auf atmega-Basis weiter machen...
Hi Andre,
ein bissl am verzweifeln bin ich schon... auf dem Panstamp ist nur dein Minimalsketch drauf. Der Panstamp ist nur mit VCC und GND angeschlossen. Mal Sendet er munter und nach einem erneuten Flashen wieder nicht. Leider bin ich aber auch "blind"
Daher folgende Idee...
Ich würde auf dem Board einen 2er Pinheader vorsehen für RX und TX. Kannst du für den ATMEGA bei DEBUG=yes alles möglich zur Initialisierungssequenz seriell ausgeben? Wenn möglich per Serieller Konsole in der Arduino IDE. Vergleichbar mit dem Linux-BootProzess...
Zb. das man schon etwas sieht wenn man nur den ATMEGA an VCC und GND anschließt.
Ev. auch auf dem TFT, setzt aber ja ein funktionierendes TFT voraus....
nein aktueller sketch spukt schon einiges aus wenn SERIALDEBUG aktiv ist. beim 2560 haben wir auch mit der anzahl der freien pins kein problem.
ich werde aber auch das LEDDEBUG weiter ausbauen. die arduino serial lib hat leider das problem das sie buffert und verzögert abreitet und sich auch mit manchen anderen dingen wie z. b. interruptroutinen nicht besonders verträgt.
wenn du platz hast für den pinheader mach ihn gleich 3 oder 4 pins groß so das man direkt einen der serial/usb wandler wie den hier http://www.ebay.de/itm/310676792112 anschließen kann.
gruss
andre
Zitat von: justme1968 am 07 Juni 2014, 20:13:04
wenn du platz hast für den pinheader mach ihn gleich 3 oder 4 pins groß so das man direkt einen der serial/usb wandler wie den hier http://www.ebay.de/itm/310676792112 anschließen kann.
Du magst den ISP nicht? Für beides ist nämlich kein PLatz....Da wir den Bootloader wohl nicht überschreiben müssen, kann ich die 5 Pins (vcc/gnd/rx/tx/Rst) anstatt ISP einbauen...
Schön wäre es jedenfalls wenn der ATMEGA in einen definierten Zustand kommt wenn nur VCC und GND angeschlossen ist. Aber das sind wohl deine angesprochenen Fehlerroutinen die auf den Panstamp nicht mehr gepasst haben...?
BTW: Der CC1101 Chip wird über eine 1.27mm Stiftleiste liegend über dem ATMEGA verbaut
den isp brauchen wir auf jeden fall. der 2560 kommt ja ohne bootloader.
ich mag am liebsten beides :) aber mit dem beispiel aus dem geht das auch mit nur den beidem pins zusätzlich. es geht dann halt nicht beides gleichzeitig.
die routinen passen auch auf den panstamp wenn man nicht alle sensoren einkompiliert.
Hallo Tobias,
was macht eigentlich der CO2 Sensor? Tut das, was ich mal berechnet habe?
Gruß Peter
ich hab dir mal eine aktuelle version der sourcen zusammen gepackt.
du kannst das nvsram deaktivieren und es wird auf eeprom umgestellt und du kannst SERIAL_DEBUG setzen dann werden auf der konsole jeweils zahlen über den vortschritt in setuo() ausgespuckt. d.h. du siehst wo der sketch hängen bleibt.
gruss
andre
ich habe jetzt auch noch mal eine minimal version des skteches auf dem board laufen und isp geht zum flashen.
der panstamp bootet jedes mal problemlos.
ich neme mir jetzt noch mal das tft vor und schaue ob ich es mit dem board zum laufen bekomme.
gruss
andre
Wie ist eigentlich der Stand? Weiter mit Panstamp oder anderer Prozessor?
Es geht mit einem Atmega 2560 weiter
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Huhu,
ich interessiere mich sehr für euer Projekt und finde eure Ideen echt super!
Ich habe mir mal ein paar Teile geschnappt und wollte mal schauen, wie gut das ganze bereits funktioniert.
Nach langem lesen hier und da, habe ich es endlich hinbekommen den Code zu kompilieren, allerdings blieb mein Display immer weiß und auch in Fhem wurde kein neues Gerät gefunden.
Als ich mir die vom inotool erstellte Hex einmal anschaute, fiel mir auf, dass diese bereits knappe 60KB hatte, obwohl "nur" ein DHT22, der TGS2600 und TFT einkompiliert waren. Da der Mega328 nur 32KB Flash hat, war der Fehler dann gefunden....
Auch die fertigen Firmware Files hier zum Displaytest etc. sind bereits fast doppelt so groß, wie der Mega328 eigentlich kann? Wie könnt ihr dann mit einem Panstamp gearbeitet haben? Oder ist der hier veröffentlichte Sourcecode auch nur noch auf dem neuen Mega ausführbar?
Oder ist es einfach zu spät und ich habe ein Brett vor'm Kopf ....
Liebe Grüße
Basti
Zitat von: basti223 am 29 Juni 2014, 01:20:37
Als ich mir die vom inotool erstellte Hex einmal anschaute, fiel mir auf, dass diese bereits knappe 60KB hatte, obwohl "nur" ein DHT22, der TGS2600 und TFT einkompiliert waren. Da der Mega328 nur 32KB Flash hat, war der Fehler dann gefunden....
HEX ist nicht BIN, wenn Du reinschaust, wirst Du sehen warum ;)
da s script im indoor verzeichnis spuckt dir diverse größen aus. je nach plattform musst du darin eventuell noch den pfad anpassen.
gruss
andre
Ich habe es zeitlich immer noch nicht weiter geschafft. Sind immer wichtigere Dinge dazwischengekommen (-> Gartenbewässerung, Alarmanlage Statusdisplay und allgemeine FamilienSommeraktivitäten)
Es geht aber definitiv weiter, ist nur eine Frage der Zeit...
@Tobias
Wie bzw. wo willst Du denn das TFT montieren, passt das in einen Schaltereinsatz?
Gruß Markus
Das TFT passt in das zur Platine passende Gehäuse. Definitiv aber nicht in einem schaltereinsatz. Weder TFT noch Platine. realistisch gehts nach dem Sommer hier weiter. Ich komme einfach nicht dazu das überarbeitete layout zu komplettieren.
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Das TFT passt in das zur Platine passende Gehäuse. Definitiv aber nicht in einem schaltereinsatz. Weder TFT noch Platine. realistisch gehts nach dem Sommer hier weiter. Ich komme einfach nicht dazu das überarbeitete layout zu komplettieren.
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Ich finde das Projekt super. Bin schon länger auf der Suche nach einem Innenraumsensor mit Temperatur, Luftfeuchte und CO2 Messung. Wäre super wenn es weiter geht. Da denke ich mehrere auf der Suche nach solch einem Sensor sind mach doch ein Kickstarter Projekt draus.
es wird auf jeden fall weiter gehen. ich möchte die dinger in jedem Zimmer installieren und auch die fb steuerung dann darüber und mit einer steuereinheit in der verteilung machen.
Stimmt. Wird weitergehen. Bei mir ist aber die zeit gerade knapp. Freue mich aber für Unterstützung von einem der auch etwas von hardware und Schaltungen versteht. Musste gerade meine 1wire DS2408 Platine überarbeiten, das Abfallkalendermodul beenden und fhem auf den cubietruck portieren. Und in einer Woche hab ich Urlaub :)
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Stimmt. Wird weitergehen. Bei mir ist aber die zeit gerade knapp. Freue mich aber für Unterstützung von einem der auch etwas von hardware und Schaltungen versteht. Musste gerade meine 1wire DS2408 Platine überarbeiten, das Abfallkalendermodul beenden und fhem auf den cubietruck portieren. Und in einer Woche hab ich Urlaub :)
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Stimmt. Wird weitergehen. Bei mir ist aber die zeit gerade knapp. Freue mich aber für Unterstützung von einem der auch etwas von hardware und Schaltungen versteht. Musste gerade meine 1wire DS2408 Platine überarbeiten, das Abfallkalendermodul beenden und fhem auf den cubietruck portieren. Und in einer Woche hab ich Urlaub :)
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Stimmt. Wird weitergehen. Bei mir ist aber die zeit gerade knapp. Freue mich aber für Unterstützung von einem der auch etwas von hardware und Schaltungen versteht. Musste gerade meine 1wire DS2408 Platine überarbeiten, das Abfallkalendermodul beenden und fhem auf den cubietruck portieren. Und in einer Woche hab ich Urlaub :)
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Meine Unterstützung hast Du, Du brauchst nur drauf zuzugreifen ;)
Gruß PeMue
mal wieder etwas neues für die anderen...
Ich habe aufgrund der Komplexität das Konzept des Sensors auf Modulbauweise umgestellt. Hat den Vorteil das das Layout weniger komplex wird und man je nach Lust und Laune das Mainboard mit bestimmten MOdulen bestücken kann oder nicht. Auch hinterher ;) Soll per Konfiguration im laufenden Betrieb zu- und abschaltbar sein. Der Sketch bleibt unangetastet.
Für die Hardwarespezis unter Euch, hier (https://tulpemd.traffic-eye.de/owncloud/public.php?service=files&t=9da73133c141d58b9ea98ad51c53a791) findet Ihr Schaltplan und Layout das Mainboards. Die Module kommen jetzt noch dran.
Ich gehe davon aus das die nächste Platinen-Prototypencharge Mitte November vorliegt. Ich hoffe das diese dann funktioniert... <grrr>
Dazugekommen ist noch ein Modul für einen optionalen PIR-Sensor zur Innenraumüberwachung. Kann man später auch nehmen um das TFT automatisch anzuschalten wenn jemand im Raum ist, oder eben abzuschalten wenn keiner im Raum ist. Aber auch zur Integration in eine Alarmanlage ;) Der ATMEGA2560 sollte jetzt genug Platz für einen großen Sketch haben ;)
Ebenfalls dazugekommen zur relativ teuren Stromversorgung mit den TSR-2450/TSR-2433 ist ein neues Modul mit einem Dualen Schaltregler TPS54283. Ist aber nur etwas für SMD-Lötfreaks. Das Layout dazu ist direkt aus dem Datenblatt übernommen, sollte also funktionieren ;)
Zitat von: Tobias am 26 September 2014, 20:01:25
Ich gehe davon aus das die nächste Platinen-Prototypencharge Mitte November vorliegt. Ich hoffe das diese dann funktioniert... <grrr>
Hattest Du den CO2 Sensor schon mal getestet? Ich bin immer noch daran interessiert, ob das, was ich mal gerechnet habe, auch stimmt ...
Gruß PeMue
Das Board vorher hat ja nicht funktioniert. Deswegen konnte ich auch den Sensor nicht testen. Klappt aber hoffentlich mit dieser Revision ;-)
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Zitat von: Tobias am 27 September 2014, 20:08:21
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Das ALCATEL ONE TOUCH 997D schickt wohl alle Nachrichten viermal 8)
Gruß PeMue
Zitat von: PeMue am 27 September 2014, 20:00:49
Hattest Du den CO2 Sensor schon mal getestet? Ich bin immer noch daran interessiert, ob das, was ich mal gerechnet habe, auch stimmt ...
Gruß PeMue
Ich habe auch schon andere nette co2 Sensoren gefunden, aber jenseits 100€. Also nicht diskutabel.
Plan ist auch später einen Sound Sensor drauf zu planen. Für die Innenraum Überwachung zur Alarmanlage.
Bin aber gerade im Urlaub und komme erst nächste Woche wieder dazu. Gruß
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
schon fast fertig mit dem layout ...
Man kann schön die neue modulare Bauweise erkennen...
Wenn man die 3D Darstellung sieht, wird ein Eagle (V4 glaube ich) Benutzer fast neidisch. Kommen die Bilder aus Target so raus?
Gruß PeMue
Zitat von: PeMue am 04 Oktober 2014, 14:23:29
Wenn man die 3D Darstellung sieht, wird ein Eagle (V4 glaube ich) Benutzer fast neidisch.
Kennst du Eagle-3D?
Damit bekommt man auch ganz Ansehnliche 3D-Bilder von Eagle.
http://www.ignorancia.org/uploads/experiments/eagle3d/hexapod-03.jpg
Sieht toll aus :B
Kann man das Board auch zum Rauchmelder erweitern?
Gruss B.
Ein Rauchmelder arbeitet zwar mit einer Optik, aber da Temperatur und Luftqualität gemessen werden, wird es sicher auch zu diesem Zweck missbraucht werden können...
fidel hat Recht, es ist ein Luftgütesensor drauf, plus ein CO2-Sensor und damit Rauchmeldertauglich
Hallo zusammen,
das ist zumindest die Theorie. Da die Rauchmelder ein relativ schnelles Ansprechverhalten haben müssen, müsste man die entsprechenden Ansprechzeiten für die Luftgütesensoren prüfen. Wenn diese zu langsam sind, geht die Funktion "Rauchmelder" damit nicht. Irgendwo habe ich noch einen Artikel von test, in dem die Messbedingungen beschrieben sind ...
Gruß PeMue
ICh hatte den TGS2600 (VOC-Sensor) auf dem Breadboard an einem DS2450 drauf. Den Sensor angehaucht und es war sofort eine Änderung messbar.
Ich denke es ist also nur eine Frage der Firmware wioft der Sensor ausgelesen wird und bei Änderung > Threshold wird sofort eine Message an FHEM gesendet. Analog zum Lichtsensor der bei starker Lichtveränderung auch in Interrupt ausgibt auf den man reagieren kann.
kurzer Zwischenstand: Das Layout ist fertig. Leider komme ich gerade nicht dazu potentielle Fehler im Layout zu finden bzw die Fehlerliste durchzugehen. Dummerweise habe ich bei einer Standard-Aura von 0.3mm Probleme mit dem ATMEGA2561, der hat nämlich seine Beinchen enger :( Und dadurch eine ellenlange Fehlerliste :(
Gerade viel Stress im Job... Die Kinder tun Ihr übriges... Jetzt bin ich erstmal auf Dienstreise nach Indien, komme erst wieder frühestens Anfang Dez. dazu...
Wer an diesem Projekt Interessiert ist und Target3001 Erfahrung hat, der kann gerne die "Nacharbeit" im 4-Augenprinzip erledigen :)
Endlich fertig. Hier das finale Layout... die nächsten Tage werde ich die Platinen bestellen.
@Andre, konntest du am Sketch schon etwas anpassen? Für dich sicherlich wichtig wie die finale Verschlatung ist?
Wichtig ist für den Sketch, das wenn nur der ATMEGA (nichts(!) weiter) auf dem Board ist, schon die ersten Debugmeldungen auf der seriellen konsole durchrauschen sollten bzgl. Status des Ladens der Einzelkomponenten. Wichtig für die Fehlersuche.
Deshalb gibt es hier auch dem ISP auch einen Seriellen Anschluss.
Weiterhin für Debugging-und Statusmeldungen habe ich dem Board 3 statt nur 1 LowCurrent-LED gegönnt: Rot/Gelb/Grün
Achso, wer kein Fan vom Panstamp ist, kann mit einem entsprechendem Asksin-Sketch daraus auch ein HomeMatic-Sensor machen :)
Hallo Tobias,
bestellst du erstmal Prototypen zum Test oder schon für den produktiven Einsatz?
Ich hätte auch Bedarf. ;)
Gruß Björn
Alles noch Protoypen zum Test... BIs jetzt läuft alles mit einem Panstamp nur bei JustMe1968.
Sobald die PLatinen da sind kann der erste Test mit dem ATMEGA2561 laufen. Spannend wird sicherlich das auflöten des ATMEGA2561 werden ;)
Einer meiner persönlichen Anwendungsfälle ist die Integration in meine Alarmanlage. Deswegen ist zum Schluss noch der PIR und der Soundsensor drauf gekommen.
Je nach Anwendungsfall kann man die benötigten Module aufstecken, oder eben nicht... So ist der Plan....
Ich teste das Layout nochmal mit den Hinweisen von UweH und dann gehts in die Bestellung - zusammen mit 1wire Umweltsensor/Panstamp-Umweltsensor und 1wire Temp/Luftfeuchtesensor.
Hallo,
Gibt es da schon Erfahrungen mit dem TGS4161? Schon auf dem Breadboard am laufen?
10 Jahre Betriebsdauer ist ja schon ganz ok bei dem Preis.
Kann man ihn direkt am ADC betreiben bei einem ADC 0-1 Volt 10Bit? Oder macht das nur Sinn mit Versträrker? (Habe gelesen: Sensitivity: EMF= 44-72mV (EMF 350ppm - EMF 2500ppm)
Ist die Signalverarbeitung eher so einfach wie hier im Beispiel oder sind Probleme zu erwarten? (Vermutlich darf beim ADC-Auslesen der Funksender nicht senden)
CO2_cal = 0.38; //varied from 0.22 - 0.49
float ppm_last;
void GetCO2()
{
for (int i = 0; i < 4; i++)
{
senCO2 = ADC_Read;
delay(20);
}
CO2val = (CO2_cal)*(1024.0/5.0);
CO2val = (CO2val - senCO2) * (5.0/1024.0)*1000.0;
CO2ppm = pow(10, ((CO2val + 158.631)/62.877));
CO2ppm = (0.95 * ppm_last + (1.0 - 0.95) * CO2ppm);
ppm_last = CO2ppm;
delay(30);
}
Zitat von: SpenZerX am 17 Februar 2015, 11:09:06
Gibt es da schon Erfahrungen mit dem TGS4161? Schon auf dem Breadboard am laufen?
Hallo,
Ich habe die letzten 2 Monaten verbracht um diesen sensor zu analysieren. Meine Erfarung ist auf diese Seite compiliert:
https://www.hackster.io/vlast3k/tgs4161-co2-research (https://www.hackster.io/vlast3k/tgs4161-co2-research)
Ich hoffe das wird euch nutzlich sein :)
Gruesse, Vladimir
Hallo Vladimir!
Vielen Dank für deine ausführliche Beschreibung, sehr interessant!
Trotz deiner guten Erläuterungen habe ich nochmal ein paar konkrete Fragen, da ich gerade selbst an einer solchen Implementierung bin (jedoch in Zusammenhang mit einem Raspberry PI):
1.) Sollt sich bei Erhöhung der CO2-Konzentration die Ausgangsspannung erhöhen oder vermindern? Ich habe hierzu schon verschiedene Aussagen im Netz gefunden und aus dem Datenblatt werde ich auch nicht 100% schlau.
2.) Ich betreibe den Sensor ebenfalls mit dem Verstärker TLC271 in Kombination mit einem MCP3008 AD-Wandler. Somit schicke ich die geringe Ausgangsspannung des TGS4161 in meinen (nicht invertierenden) TLC271, wo ich ca. eine Verstärkung von 9 eingestellt habe (die Wiederstandwerte sind 2,7k und 21,8k). Zusätzlich habe ich noch einen 27pF Kondensator parallel auf den 21,8k Wiederstand geschalten (soll anscheinend helfen, damit das Signal besser wird...). Mit dem verstärkten Signal gehts dann in den AD-Wandler (und dann schulssendlich in den Raspi) und hier habe ich (auch von dir beschrieben) ein Problem. Nämlich pendeln wie Werte wie wild herum (so um die +- 0,3 Volt). Hast du hier eine Idee, wie ich das Pendeln besser in den Griff bekommen könnte? An einer instabilen Versorgungsspannung liegts glaub ich nicht, weil ich auch anderen Sensoren (z.B. den TGS2600 VOC-Sensor) korrekt betreiben kann.
Oder muss hier wirklich ein der Mittelwert genommen werden...klingt irgendwie nicht recht optimal für mich.
3.) Wenn ich auf den Figaro von oben drauf schaue und das kleine Füßchen nach Norden schaut, wie sind deiner Meinung nach die Pins angeordnet? Im Datenblatt gibt es nämlich eine "Bottom View", aber heißt das nun, dass der Sensor direkt von unten betrachtet wird oder nur schematisch von oben auf die unten Pins geschaut wird? Oder einfacher gesagt: befindet sich der Pin 1 links oder rechts vom Füßchen, wenn ich von oben auf dem Sensor schaue?
4.) Hast du auch ein Schaltbild, welches du zur Verfügung stellen könntest?
Danke Vorab für deine Antworten und sorry für die paar Basic-Fragen (bin noch nicht recht bewandert im Aufbau solcher Schaltungen)
Danke und LG
Michael
Zitat von: Mickoeck am 10 Mai 2015, 14:24:35
3.) Wenn ich auf den Figaro von oben drauf schaue und das kleine Füßchen nach Norden schaut, wie sind deiner Meinung nach die Pins angeordnet? Im Datenblatt gibt es nämlich eine "Bottom View", aber heißt das nun, dass der Sensor direkt von unten betrachtet wird oder nur schematisch von oben auf die unten Pins geschaut wird? Oder einfacher gesagt: befindet sich der Pin 1 links oder rechts vom Füßchen, wenn ich von oben auf dem Sensor schaue?
Das PDF des Herstellers zeigt doch die Nase am Gehäuse zur besseren Orientierung, welche Pins gemeint sind!
1 4
2 3
Zum TGS2600 erfasst du die Daten auch in Fhem? Wenn ja welche und welche Spannungswerte hast du hier? Ich betreibe gerade testweise (GästeWC) einen TGS2602 mit 10kOhm über GND an 5V und die Werte liegen um die 0,38V - 0,50V diese sind meiner Meinung nach aber nicht aussagekräftig genug, um in Abhängigkeit davon den Badlüfter zu schalten...
Greetz
Eldrik
Hallo Eldrik!
Du hast schon recht, dass die Nase die Richtung angibt. Aber es ist ein Unteschied, ob bei der Ansicht, die Pins nach oben schauen oder ich quasi von oben (also wo das Gitter angebracht ist) auf die Pins schaue. Wie interpretierst du die Ansicht? Wenn du also wirklich von der Bodenansicht auf die Pins schaust (also du schaust direkt auf die Pins drauf), welche Pin-Anordnung ist deiner meiner nach die korrekte Anordnung?
Die Daten vom TGS2600 erfasse ich auch in FHEM, aber ich schicke diese per Telnet Anweisung von einem externen Programm an FHEM. Die Daten erfasse ich nur über einige wenige Stufen, also nicht über irgendwelche komplizierten mathematischen Berechnungen (da hatte ich auch meine Schwierigkeiten und bin nicht weiter gekommen).
Also hier mal der Sourcecode (ist in Pyhton für den Raspi geschrieben und hat auch gleich den Codes des AD-Wandlers inkludiert) des externen Programmes (die letzte Zeile ist dann die Telnet-Anweisung, welche FHEM mit Daten füttert):
# Reading data from the Figaro TGS-2600
# Interpreting values: 1=Fresh; 0,9=Clean; 0,8+0,7=Normal; 0,6+0,5=Foul; 0,4+0,3+0,2+0,1+0=Pollute
import time
import RPi.GPIO as GPIO
from math import pow, log
import os
GPIO.setmode(GPIO.BCM)
HIGH = True # HIGH-Pegel
LOW = False # LOW-Pegel
debug = 0
# Funktionsdefinition
def readAnalogData(adcChannel, SCLKPin, MOSIPin, MISOPin, CSPin):
# Pegel vorbereiten
GPIO.output(CSPin, HIGH)
GPIO.output(CSPin, LOW)
GPIO.output(SCLKPin, LOW)
sendcmd = adcChannel
sendcmd |= 0b00011000 # Entspricht 0x18 (1:Startbit, 1:Single/ended)
# Senden der Bitkombination (Es finden nur 5 Bits Beruecksichtigung)
for i in range(5):
if (sendcmd & 0x10): # (Bit an Position 4 pruefen. Zaehlung beginnt bei 0)
GPIO.output(MOSIPin, HIGH)
else:
GPIO.output(MOSIPin, LOW)
# Negative Flanke des Clocksignals generieren
GPIO.output(SCLKPin, HIGH)
GPIO.output(SCLKPin, LOW)
sendcmd <<= 1 # Bitfolge eine Position nach links schieben
# Empfangen der Daten des ADC
adcvalue = 0 # Ruecksetzen des gelesenen Wertes
for i in range(11):
GPIO.output(SCLKPin, HIGH)
GPIO.output(SCLKPin, LOW)
# print GPIO.input(MISOPin)
adcvalue <<= 1 # 1 Postition nach links schieben
if(GPIO.input(MISOPin)):
adcvalue |= 0x01
time.sleep(0.5)
return adcvalue
# Variablendefinition
ADC_Channel = 1 # Analog/Digital-Channel
SCLK = 18 # Serial-Clock
MOSI = 23 # Master-Out-Slave-In
MISO = 24 # Master-In-Slave-Out
CS = 25 # Chip-Select
# Pin-Programmierung
GPIO.setup(SCLK, GPIO.OUT)
GPIO.setup(MOSI, GPIO.OUT)
GPIO.setup(MISO, GPIO.IN)
GPIO.setup(CS, GPIO.OUT)
# TGS-2600 Definition
Vc = 5
RL = 700 #in Ohm
Ro = 24000 #in Ohm
#Debug-Mode
if (debug == 1):
while True:
# Berechnung Volt
volts = (readAnalogData(ADC_Channel, SCLK, MOSI, MISO, CS) * 3.3) / float(1023)
#volts = round(volts,5)
print "Volt: ",volts
# Berechnung Rs von TGS-2600
Rs = ((Vc*RL)/volts)-RL
print "RS: ", Rs
# Berechnung aktueller Luftwert (Rs) zum Frischluftwert (Ro)
Rs_Ro = Rs / Ro
Rs_Ro = round(Rs_Ro,2)
print "Rs_Ro: ", Rs_Ro
else:
# Berechnung Volt
volts = (readAnalogData(ADC_Channel, SCLK, MOSI, MISO, CS) * 3.3) / float(1023)
# Berechnung Rs von TGS-2600
Rs = ((Vc*RL)/volts)-RL
# Berechnung aktueller Luftwert (Rs) zum Frischluftwert (Ro)
Rs_Ro = Rs / Ro
Rs_Ro = round(Rs_Ro,2)
# Uebergabe Rs_Ro-Wertes an FHEM
shell_string = "echo 'setreading WZ.air_quality_tgs_2600 state %s;quit\n' | nc localhost 7072" % Rs_Ro
os.system(shell_string)
# Umwandlung des Rs_Ro-Wertes in Kategorien
if Rs_Ro >= 1:
Rs_Ro_stage = "Frischluft"
elif Rs_Ro < 1 and Rs_Ro >= 0.9:
Rs_Ro_stage = "saubere Luft"
elif Rs_Ro < 0.9 and Rs_Ro >= 0.7:
Rs_Ro_stage = "normale Luft"
elif Rs_Ro < 0.7 and Rs_Ro >= 0.5:
Rs_Ro_stage = "schlechte Luft"
elif Rs_Ro < 0.5:
Rs_Ro_stage = "verschmutze Luft"
# Uebergabe der Rs_Ro-Kategorien an FHEM
shell_string = "echo 'setreading WZ.air_quality_tgs_2600 VOC %s;quit\n' | nc localhost 7072" % Rs_Ro_stage
os.system(shell_string)
Hier auch noch ein einfacher Verdrahtungsplan: siehe Bildanhang
Falls jemand ein Verbesserungspotential sieht, nur her damit ;-)
So, und jetzt muss nur noch der TGS4161 rund laufen und dann kann ich endlich wieder mal durchschlafen ;-)
LG, Michael
dank dir für die Infos!
Ich hatte meine Sicht auf die Pins extra abgebildet wie ich diese auf deine Frage unter 3. interpretiere.
Greetz
Eldrik
Zitat von: vlast3k am 10 Mai 2015, 07:57:34
Hallo,
Ich hoffe das wird euch nutzlich sein :)
Gruesse, Vladimir
Hello Vladimir,
I change to english, because I think, this will be more convenient to you.
First of all, thanks for sharing your investigations.
On top I have several questions:
- Can you provide a schematics of your setup? I am quite sure, that the amplifiers do an offset and a gain adjustment. Also they might affect the accuracy of the sensor.
- Which max. range did you use for the amplifier? I think, the accuracy can be increased by spreading the range over the whole ADC range.
- How do you plan the initial calibration of the gas sensor? Will you do it with the reference of the K30?
Thanks and regards.
PeMue
Ich hatte vor 2 Jahren TEsts mit dem TGS1600 und einem 10k gemacht. Diese waren annähernd gleich dem des Velux VOC USB-Sensors. Deswegen habe ich exakt diese Konstellation auf dem Board verwendet.
Die fertigen Platinen liegen schon vor mir, ich kommt gerade nur noch nicht dazu da ich den Umweltsensor erst beenden möchte. Dann kann ich mich endlich diesem Projekt wieder wittmen. Ich denke Andre/Justme ist auch noch nicht soweit für eine erste ATMEGA2561 Sketch Variante..
Jetzt hab ich es endlich geschafft die erste Platine in der basisversion zu löten. Der Test blinksketch funktioniert jedenfalls :)(http://images.tapatalk-cdn.com/15/07/24/170dca6dc9c8a41d86bbc3e3fffc980e.jpg)(http://images.tapatalk-cdn.com/15/07/24/046d96751933326b6201864830dd1699.jpg)(http://images.tapatalk-cdn.com/15/07/24/656726ee6624ee470a80fd530cdc63f0.jpg)
Gesendet von meinem ALCATEL ONE TOUCH 997D mit Tapatalk
Uii! Der Mega scheint mit Lötkolben gelötet zu sein. Respekt! Sieht gut aus, die Platine! :)
Hallo, nachdem ich den ganzen Thread gelesen habe möchte ich mich mal nach einem Update erkundigen. Es wäre wirklich sehr schade wenn das Projekt auf Eis gelegt worden wäre.
Ist nicht auf Eis gelegt. Ich arbeite dran, bin aber gerade im Urlaub. Dasselbe bei Justme1986. Diese Sensoren sollen bei mir definitiv zum EInsatz kommen. Insgesamt ca 20 Stück.
Bin gerade dabei die Schaltung nochmal leicht anzupassen. Die cc1101 Module müssen gewechselt werden da ich nicht die echte 868Mhz Variante verwendet hatte. Habe mir auch gerade einen ReflowOfen zugelegt damit ich die Platinen auch bestücken kann. Damit kann ich auch irgendwann mal fertig bestückte Platinen anbieten.
Die Fangemeinde ist nur sehr!!! klein ;) weiß auch nicht warum. Es hat sich auch noch keiner gefunden der eine Asksin Firmware für Homematic schreibt. Aktuell wird der Prototyp mit dem SWAP-Protokoll (Panstamp) umgesetzt.
Zitat von: Tobias am 12 August 2015, 13:34:33
Die CC1101 Module müssen gewechselt werden da ich nicht die echte 868Mhz Variante verwendet hatte.
Warum? Meiner Ansicht nach gibt es die in zwei Varianten, siehe hier
http://forum.fhem.de/index.php/topic,24651.msg319549.html#msg319549
diese müssten auch pinkompatibel sein.
Gruß PeMue
Ich habe zurzeit schmale Module. Die neuen sind dieselben aus deinem Post und sind etwas breiter und nicht PINkompatibel
5PCS LOT CC1101 wireless module Frequency range: 300 - 1000 MHz+free shipping
http://www.aliexpress.com/item/5PCS-LOT-CC1101-wireless-module-Frequency-range-300-1000-MHz-free-shipping/1095240213.html
Beitrag kurz gehalten da unterwegs und mobil gesendet
Ok, verstanden. Die von mir ausgesuchten sollten pinkompatibel zueinander sein, wobei beim 868 MHz Modul keine Beschreibung dabei ist. Zusammenfassung siehe Anhang.
Gruß PeMue
Na das passt dann ja. das Design ist jetzt für die 868MHz Variante. D. H. Ein Nutzer kann später entscheiden ob er Das 868 Oder 433 Modul nehmen möchte. Ist also in der Wahl des Funkprotokolls frei.
Beitrag kurz gehalten da unterwegs und mobil gesendet
Statusupdate: Mir ist der Hausbau dazwischen gekommen. Muss erst meine Fensterkontaktsensoren noch fertig machen, Restarbeiten am Haus abschließen und dann gehts 2017 hier weiter.
Habe für diesen Sensor extra Buskabel als Stromversorgung in jeden Raum in eine Unterputzdose auf 1,60höhe eingebaut. Da soll später das Sensorgehäuse drauf ;) Stromeinspeisung im Keller per Hutschienennetzteil.
Da an der aktuellen Platine das Senden sauber funktionierte aber irgendwas am Empfang nicht passte, muss ich mir den ATMega nochmal auf eine Trägerplatine und auf dem Breadboard nochmal neu aufbauen...
Zitat von: Tobias am 12 August 2015, 13:34:33
Es hat sich auch noch keiner gefunden der eine Asksin Firmware für Homematic schreibt. Aktuell wird der Prototyp mit dem SWAP-Protokoll (Panstamp) umgesetzt.
An was hast Du hier genau gedacht ? Was eigenes oder ein bestehendes Device nachbilden ?
Ist was eigenes, ansonsten hätt ich ein Fertigmodul nehmen können ;) ;)
Soetwas gibts nämlich nicht...
Und ich glaube, der Test des Luftqualitätssensors steht auch noch aus :)
Zitat von: Tobias am 01 November 2016, 10:39:29
Ist was eigenes, ansonsten hätt ich ein Fertigmodul nehmen können ;) ;)
Soetwas gibts nämlich nicht...
Sorry - habe nicht alles gelesen. Wenn Du weisst, was Du wie gesendet haben willst und welche Einstellungen gehen sollen (also wie die Listen aussehen sollen), könen wir recht schnell nen Skretch hin kriegen. Bei der FHEM-Seite weiss ich (noch) nicht so genau, wie man eigene Devices einbindet - außer das es die Möglichkeit gibt, dem HM-Teil zu erweitern. Aber der Universalsensor kann es ja auch :-)
Hallo Zusammen,
der CO2-Luftgüte-Messer wäre auch mein nächstes Projekt-Ziel gewesen.
Ohne den Thread jetzt komplett durchgelesen zu haben, wäre ja die andere Möglichkeit:
die CO2-Konzentration über das TX3-LaCrosse-Protokoll auf 433Mhz Basis abzuwickeln.
Da ich die SW-Komponenten dazu schon fertig habe und die HW dazu leicht beschaffbar und sehr günstig ist.
Die Integration in FHEM ist ebenfalls einfach.
Beispiel siehe hier (https://forum.fhem.de/index.php/topic,59933.0.html)
Der erhöhte Strombedarf ließe sich leicht per LION-Akku z.B. NCR18650 stillen.
Ein Sketch dazu wäre rel. schnell entwickelt. Eine Umsetzung im 868Mhz-Bereich wäre aber ebenfalls denkbar. ;)
Mir würden nur eine Empfehlung für ein geeigneten Sensor fehlen,
dann wäre ein Prototyp dazu schnell aufgebaut.
gut zu hören... denn nicht alle haben eine Panstamp Infrastruktur installiert ;)
Aber erstmal muss ich die Hardware fertig hinbekommen, da bin ich leider alleine. Warscheinlich ist der Anwendungsfall zu speziell.. (kann ich mir garnicht vorstellen...)
Beschreibung siehe hier: http://www.fhemwiki.de/wiki/PanStamp_Innenraumsensor
@jürgs: auch lacrosse ist wieder speziell. Homematic ist wohl am weitesten verbreitet. Bis die Hardware funktioniert läuft dieser hier per SWAP-Protokoll (panstamps)
Hardware hab ich alles zusammen, irgendwo hängts noch im Layout.... wie bereits geschrieben, die Hauptplatine sendet super, aber empfängt nix. Das ganze ist modular aufgebaut. Da kann man die Zusatzmodule aufstecken für jeden anwendungsfall den man hat
PS. CO2 Sensor ist alles andere als günstig.... hast du mal die Preise gecheckt?? Aber nicht VOC, sondern echte CO2 sensoren?
Also wäre diese Sensoren in der ersten Auswahl:
- CO2 Sensor (TGS4161)
- VOC Sensor (TGS2600) (Luftgütesensor)
Ok, panstamp_innenraumsensor scheint mir ja die Eier-legende Wollmilchsau zu sein :)
Ich würde mich gerne auf erst mal 2 Meß-Parameter konzentrieren, müsste mir aber erst die Sensoren bestellen ....
Grüße,
Jürgen
hallo tobias,
sorry das ich so lange ruhig war. irgendwie komme ich nicht dazu. interesse habe ich aber immer noch. ich hoffe jedes mal das im herbst und winter besser wird...
das projekt deckt einen bereich und funktionsumfang ab zu dem es aktuell nichts vergleichbares gibt.
weiter oben im thread gibt es auch bilder und ein video zum prototypen und wie bedienung und oberfläche des displays aussehen können: https://forum.fhem.de/index.php/topic,20956.msg155191.html#msg155191 (https://forum.fhem.de/index.php/topic,20956.msg155191.html#msg155191).
gruss
andre
Zitat von: juergs am 01 November 2016, 11:23:00
Also wäre diese Sensoren in der ersten Auswahl:
- CO2 Sensor (TGS4161)
- VOC Sensor (TGS2600) (Luftgütesensor)
Wie wäre der iAQ-core P (http://ams.com/eng/Products/Environmental-Sensors/Air-Quality-Sensors/iAQ-core-P)?
Gruß PeMue
Hallo Peter,
der (http://ams.com/eng/content/view/download/380636) sieht ja gut aus!
Erkundige mich morgen mal nach Preis (1000er Stck-Zahl: 27US$) + Verfügbarkeit.
Scheint ja fast "sehr" günstig zu sein ....
Jürgen
@Tobias:
ZitatHomematic ist wohl am weitesten verbreitet.
Gibt es da schon Sensor-Umsetzungen? Habe noch keine Homematic Sachen im Einsatz... (eher FS20)
Sorry, für die Frage, habe noch kein Überblick:
https://www.symcon.de/forum/threads/16032-Funkmodul-Strommessung (https://www.symcon.de/forum/threads/16032-Funkmodul-Strommessung)
https://www.mikrocontroller.net/topic/160474 (https://www.mikrocontroller.net/topic/160474)
https://media.ccc.de/v/30C3_-_5444_-_en_-_saal_g_-_201312301600_-_attacking_homematic_-_sathya_-_malli (https://media.ccc.de/v/30C3_-_5444_-_en_-_saal_g_-_201312301600_-_attacking_homematic_-_sathya_-_malli)
https://forum.homegear.eu/t/Optischer-T%C3%BCrkontakt/99 (https://forum.homegear.eu/t/Optischer-T%C3%BCrkontakt/99)
ZitatGrundlage für die Sketche ist RoomNode.pde
http://jeelabs.net/projects/cafe/repository/show/RF12/examples/roomNode.
Angepasst habe ich das Datenformat (payload), damit es in FHEM verarbeitet werden kann,
und je nach Sketch überflüssiges gelöscht...
https://groups.google.com/forum/?fromgroups=#!searchin/fhem-users/jeenode/fhem-users/-x0s3h0QIf8/4VIMwrS6iBgJ (https://groups.google.com/forum/?fromgroups=#!searchin/fhem-users/jeenode/fhem-users/-x0s3h0QIf8/4VIMwrS6iBgJ)
Hi Peter, der ist auch nur ein VOC Sensor. Diese sind im allgemeinen sowiso relativ günstig.
Das Grundlayout ist eh schon fertig, alle Sensoren incl dem TGS2600 sind gesetzt ;)
Es geht jetzt nur noch um Feinheiten...
Aufgrund der Modularität muss bei Layout Anpassungen nur das entsprechende Modul geändert werden, der Rest bleibt unberührt :)
Zb, wenn der Soundsensor nicht die passende Empfindlichkeit hat muss dafür nur(!) das Modul angepasst werden.
Geht jemand "zufällig" auf die Elektronika 8.-11. November 2016, Messe München?
Zitat von: juergs am 01 November 2016, 12:48:29
Geht jemand "zufällig" auf die Elektronika 8.-11. November 2016, Messe München?
Ja, am 10.11. ;)
Zum iAQ-core:
Arduino-Projekt (http://www.loxwiki.eu/pages/viewpage.action?pageId=917927) mit IAQ2000-Lib (https://github.com/jrowberg/i2cdevlib/blob/master/Arduino/IAQ2000/IAQ2000.h)
Manual-IAQ-001-VOC-Sensor (http://www.co2meters.com/Documentation/Manuals/Manual-IAQ-001-VOC-Sensor.pdf) zeigt auf eine Karlsruher Nummer! ;)
Bezugsquelle (http://de.futureelectronics.com/de/Technologies/Product.aspx?ProductID=IAQCOREPAMS1059029&IM=0&gclid=COW9vp7fh9ACFQ2ZGwodlKYJAw) und Varianten (http://de.futureelectronics.com/de/Technologies/Product.aspx?ProductID=IAQCOREPAMS1059029&IM=0&gclid=COW9vp7fh9ACFQ2ZGwodlKYJAw)
ZitatErster Start / Kalibrierung
Beim ersten Start dauert es ca. 24 Stunden bis der Sensor sich Grundkalibriert hat, in dieser Zeit sollte er mindestens 1x Frischluft haben (450ppm).
Also in einem gut gelüfteten Raum starten.
Wird der Sensor vom Strom genommen, dauert es ca. 15Min. bis die Werte wieder passen (kalibriet sind).
Der Sensor kalibriert sich alle 2 Wochen selber, er kann aber jederzeit vom Netz getrennt werden um eine Neukalibrierung durch zu führen.
Oder hier:
https://www.heise.de/make/artikel/Wider-dem-Mief-2235138.html (https://www.heise.de/make/artikel/Wider-dem-Mief-2235138.html)
Bezugsquelle (http://www.ebay.de/itm/ws/eBayISAPI.dll?ViewItem&item=301232665990)
Oder die teureren Varianten:
http://www.co2meter.com/collections/co2-sensors (http://www.co2meter.com/collections/co2-sensors)
Mal ein update,
Ich bin immer noch Land unter bzw mit noch wichtigeren Dingen (leider) beschäftigt.
Ich habe mich aber gefragt, ob man den Sensor nicht auf Basis eines ESP8266 aufsetzen kann. Der hat auf jeden Fall mehr Speicher als ein panstamp und den könnte man als huckepack Platine auf die sensorplatine aufstecken.
Nicht jeder kann oder will SMD löten.
ESP8266 ESP-12F Fern Serial Port WIFI Transceiver Wireless Module
Was denkt die Gemeinde hier? Zumindest sparen ich mir jede menge Forschungsarbeit um die panstamp / swap library auf dem mega zum laufen zu bringen.
Ist denn überhaupt ausser mir an diesem Teil interessiert?
Gesendet von meinem Leap mit Tapatalk
hallo tobias,
ich bin ebenfalls immer noch interessiert. und habe leider scheinbar nicht weniger zu tun :(
da wir nicht auf batterie betrieb angewiesen sind wäre ein esp eine gute alternative. den gab es halt damals noch nicht :)
gruss
andre
Ich bin auch interessiert und würde den ESP8266 (nicht wegen dem löten, sondern wegen der Übertragungstechnik) präferieren.
Hi, an alle interessierten :)
Ich habe auf dem breadboard eine erste Version mit ESP, TFT Display, RGB Rotary Encoder, BME280 für Luftfeuchtigkeit, Temperatur und Luftdruck, Lichtsensor und PIR Sensor zusammengesteckt. Läuft, :) zumindest alle Beispiel Sketche.
Durch den Wegfall des Atmegs und des CO2 sensors, durch den neuen BME280 und das fertige Design des ESP ist die Schaltung deutlich einfacher geworden.
Der Soundsensor ist auch erstmal runter, im test hat er nicht das gebracht was ich erhofft hatte. Der VOC Sensor ist aber drauf.
Ich bin gerade beim Layout für eine neue Platine. Spätestens Ende August will ich den ersten Prototypen dieser Version gelötet haben.
Mein persönlicher erster Anwendungsfall ist neben den typischen Raum Sensor Messungen, die Steuerung eines mpd/Sonos Musik Clients pro Zimmer mit vordefinierten play Listen meines medialist moduls. Kommunikation läuft per MQTT, OTA funktioniert auch :)
Gesendet von meinem Leap mit Tapatalk
... bin immer noch interessiert ;)
Gruß PeMue
So, ich denke die Platine ist fertig, werde ich jetzt die nächsten Tage bestellen.
Wer mittesten möchte braucht neben etwas Hühnerfutter folgendes
- ESP8266
- RGB Rotary Encoder
- 1,8" TFT Display ST7735
Optional:
- BME280
- ADS1115
- TGS2600
- PIR Sensor
- TSL 2561
Zitat von: Tobias am 31 Juli 2017, 09:51:44
Optional:
- BME289
Sollte BME280 sein, oder?
Hast Du die Platinendaten irgendwo?
Danke + Gruß
PeMue
ja klar, BME280.
Welche Daten genau? Die Platine passt in das Gehäuse BOX-SENS (http://www.tme.eu/de/details/box-sens-white/gehaeuse-fuer-alarmanlagen-und-sensoren/supertronic/)
Zitat von: Tobias am 31 Juli 2017, 10:52:58
Welche Daten genau?
Erstmal Schaltplan bzw. dann ein PDF der Abmessungen. Habe mir gerade im Marktplatz genau diese Gehäuse geholt ;)
Gruß PeMue
Hab mein Post (https://forum.fhem.de/index.php/topic,20956.msg666266.html#msg666266) aktualisiert
Wie weit ist aktuell der Status der Entwicklungen.
Ich interessiere mich jedenfalls für diese Sensoreinheit.
Kann man dann ich die Platinen bei euch bestellen?
Wenn die Platinen im Test erfolgreich laufen, könnt ihr auch welche bestellen, aber nur die Platinen, gelötet werden muss selbst. Ist aber mit einer ruhigen Hand und etwas Übung kein Problem
@Peter, hast du noch Anmerkungen zum Layout? Du routest ja auch selbst Platinen ;)
Ansonsten bestelle ich Sie diese Woche so...
Hallo Tobias,
Zitat von: Tobias am 01 August 2017, 07:32:02
@Peter, hast du noch Anmerkungen zum Layout? Du routest ja auch selbst Platinen ;)
ich habe jetzt auf diesem Rechned den Target Viewer nicht installiert, habe mir aber das Bild der Platinen angeschaut:
- Signalleitungen sollten >=12 mil sein (könnte hinkommen)
- Versorgungsleitungen >=16 mil (könnte auch hinkommen)
- ich würde noch jeweils oben und unten eine Massefläche einbauen, dann braucht der Leiterplattenhersteller nicht soviel ätzen
Ansonsten sieht das Layout aus meiner Sicht gut aus. Ich erstelle mir (direkt aus der Eagle Datei) bei OSHPArk.com ein Bild, wie die Platine aussehen wird. Geht aber auch mit einer ZIP-Datei, die die Gerberdaten enthält. Dann sieht man die Beschriftung, etc. und kann noch Feinheiten korrigieren.
Gruß Peter
sind bestellt :) und gleich noch die 1wire Umweltsensor platinen mit :)
Löten ist für mich kein Problem.
Was wird eine Platine ungefähr kosten?
Ich könnte 8 Stk. benötigen. Die Bauteile habe ich großteils darum nur interesse an den Platinen.
HI,
Platinen sind jetzt da :) Passen perfekt ins Gehäuse, auch mit dem untenliegenden ADS1115 Breakout-Board...
@peter: um die Datenleitung des TGS2600 von 5V auf 3.3V herunter zu bekommen habe ich einen einfachen Spannungsteiler eingebaut, ist ja nur ein analoges Signal ;)
Habe die Kombi 100k/68k genommen. Ist das aus deiner Sicht io? Was für Vorteile/Nachteile gibt es bei der Kombi 10K/6,8K zu 100K/68K ??? Das hab ich auch nach Google-Recherche nicht rausbekommen.
ich red mal mit mir selbst... hier ein paar Bilder. Bei diesem Aufbau fehlt nur noch der BME280 - da warte ich auf die Lieferung ;) UNd da der TSL obendrüber muss, ist dieser logischerweise auch noch nicht drauf.
Auf den Bilder kann man schön das ADS1115 Breakout Board auf der Rückseite als auch den aufgesteckten RotaryEncoder sehen. Auf die 2 Taster die daneben kommen sollen warte ich übrigens auch noch :(
Mir fehlt noch eine BEstätigung, ob der Spannungsteiler 68K/100K für die Pegelanpassung 5V->3.3V i.o. ist. Diese Widerstände fehlen auch noch
fürs Protokoll interessiere ich mich auch für dieses Projekt. wurde gerade netterweise von einem eigene auf dieses Thread weitergeleitet.
und so wie ich es sehen kann ist der erste Prototyp schon fertig. was mich dazu interessieren würde ist das ich gelesen habe das es kalibrierte und un kalibrierte co2 Sensoren gibt .. was habt ihr dazu zu berichten ?
Bemühe mal die FHEM-Suchfunktion und suche nach "Luftgüte" ;)
Der CO2 Sensor ist erstmal nicht mehr dabei. Nur der VOC Sensor ist noch drauf...
Zitat von: Tobias am 11 August 2017, 19:54:45
Der CO2 Sensor ist erstmal nicht mehr dabei. Nur der VOC Sensor ist noch drauf...
weil ? gerade der wäre mir wichtig
Lese hier mal mit und bekunde Interesse. 👍
Gesendet von meinem S3_32 mit Tapatalk
Habt ihr beim Layout die Wärmeentwicklung berücksichtige wegen des Temperatur/Feuchte Sensors?
Der Entwurf ist sehr kompakt doch habe ich Bedenken beim BME280 Sensor der mitten drin sitzt und keine korrekten Temperatur- und Feuchtewerte liefern kann.
Zitat von: wuast94 am 12 August 2017, 21:56:43
weil ? gerade der wäre mir wichtig
gibt mehrere Gründe:
* erstmal muss die Grundversion laufen :)
* Die Beschaltung für ein CO2 Sensor ist sehr aufwändig, auf jeden Fall musst du SMD löten können
* ein CO2 Sensor ist extrem teuer, der TGS kostet selbst bei Aliexpress schon 30€
Zitat von: Burny4600 am 13 August 2017, 19:38:49
Habt ihr beim Layout die Wärmeentwicklung berücksichtige wegen des Temperatur/Feuchte Sensors?
Der Entwurf ist sehr kompakt doch habe ich Bedenken beim BME280 Sensor der mitten drin sitzt und keine korrekten Temperatur- und Feuchtewerte liefern kann.
die wärmeentwicklung sollte nur im oberen bereich entstehen - beim esp und tgs, über dem bme280. Aber warten wir mal ab....
Für alle interessierten, habe noch einige Fehler entdeckt und mit der HardwareVersion 2.1.0 gefixt. Leider musste ich auch feststellen, das der TSL2561 beim besten Willen nicht drauf passt wenn alle anderen Komponenten ebenfalls drauf sind. Den Header dazu habe ich aber auf dem Board gelassen sodass man ihn optional anschließen kann wenn man RotEnc oder PIR nicht bestückt.
Der BME ist jetzt nach unten gerutscht.
Ein Satz (10Stk) Prototypen Platinen sind bestellt, sollten in 10 Tagen angekommen sein.
Wer ab sofort mittesten möchte, kann auch schon bei mir Platinen vorbestellen. Ab Version 2.1.0 sollten Sie auch benutzbar sein...
Update: mittlerweile hat der Sensor nicht mehr viel mit dem "Ursprungssensor" zu tun.
Das Display hab ich gegen ein Nextion 7" Touch Display getauscht. Die Vorteile sind hier die fantastischen Möglichkeiten einer Grafischen Oberfläche. Mit einem normalen TFT eigentlich undenkbar.
Der ESP8266 ist jetzt ein ESP32 geworden. Die Sensoreinheit ist mittlerweile eher Nebensache bzw ein Abfallprodukt ;)
z.Z ist die Funktionalität einer Musiksteuerung fast vollständig umgesetzt. Genutzt wird auf FHEM-Seite das Sonos- oder MPD Modul und das Medialist Modul.
Gegen die bisher umgesetzte Komplexität ist die Anzeige der Raumsituation (Temperatur, Heizungsstatus, Lichtstatus, Fensterstatus, An-Auschalten, Heizungstemperatur setzen etc eher eine Kickifax Fleissarbeit.
In den kommenden Tagen stelle ich mal Fotos und ein Video rein.
PS: Gibt es hier eigentlich Interessierte die dasselbe nachbauen wollen? Hardwaremäßig mittlerweile eher trival....
Zitat von: Tobias am 26 November 2017, 21:20:40
In den kommenden Tagen stelle ich mal Fotos und ein Video rein.
PS: Gibt es hier eigentlich Interessierte die dasselbe nachbauen wollen? Hardwaremäßig mittlerweile eher trival....
Stellst Du bitte auch den Schaltplan rein?
Danke + Gruß
PeMue
Der erste Stand ist FERTIG :)
Alles noch auf dem Breadboard und bisher nur Musiksteuerung und Einstellungsseite. Die Raumanzeige für den klassischen Innenraumsensor ist jetzt nur noch eine Fleissarbeit -
Die letzten Anpassungen der Platine ebenfalls.
Hier ein Eindruck, leider hochkant... ich weiß nicht wie ich das Video 90° drehen kann
https://youtu.be/GZ5ettnS1rw
PS: mir fehlt noch eine zündende Idee für das Layout aller relevanten Daten auf dem Display (Status und Einstellen von: Thermostat, Fenster, Rolladen, Licht an/aus, Anzeige der Messwerte (Temp, Luftfeuchte, Luftdruck, Helligkeit, Luftqualität) ohne das es überladen wirkt. Wer gute Screenshots von Beispielen kennt - immer her damit!
... boahhh! Dein Mediaplayerinterface ist ja richtig geil!!!
Wie, wo ... wie geht, was läuft im Hintergrund, wie sind die Nextion-Seiten gemacht ....???
Auf Deine Frage: JA, es besteht Interesse, wie das gemacht wurde - wie hast Du den Mediaplayer umgesetzt! Wäre sicher ein neuer Thread.
Gruß yam
Hi,
ich brauche mal Unterstützung wie ich beim TGS2600 aus den ermittelten mV die ppm Angabe ausrechnen kann. Ich kenne das Datenblatt, stell mich aber wohl zu blöde an.
Den Output des TGS2600 habe ich mittels Spannungsteiler (100K/68K) am ESP-ADC1-7 anliegen.
Wer kann mir helfen?
Edit: hab hier (https://forum.fhem.de/index.php/topic,83242.0.html) ein anderes TGS2600 für eine Vorlage gefunden
Endlich ist das erste Display fertig angebaut
Gesendet von meinem Leap mit Tapatalk
Edit: jetzt weiß ich das bei einer Kabellänge von ca 15m ein 0.8mm Kabel (2x2x0.8 EIB Buskabel) nicht mehr ausreicht. Am ESP lagen mit Display dann nur noch 4.15V an und das hat für den ESP nicht mehr gereicht. Wenn man alle 4 Kabel benutzt (2x VCC, 2xGND) und damit den Querchnitt verdoppelt, liegt 4.7V an womit der ESP nun stabil läuft.
Ok, hätte man auch vorher ausrechnen können :(