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

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

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
MLX 90614 Ansteueren/Ansprechen
03.12.2019, 10:18
Beitrag #1
MLX 90614 Ansteueren/Ansprechen
Sehr geehrtes Forum, Liebe Arduino - Community,

ich bin ein absolut unerfahrener, aber nicht völlig ahnungsloser Arduino Anwender und ersuche Eure Hilfe um ein kleineres, studentisches Projekt voranzutreiben.

Projektbeschreibung:
-> Umsetzen eines tech. Prozesses zur kontrollierten Temperaturstabilisierung eines Kochvorgangs.
Erwünscht wird eine annähernd konstante Temperatur von knapp unter dem Siedepunkt um ein Überkochen zu vermeiden und somit Energie beim Kochprozess zu sparen. Soweit, so gut.

Die ursprüngliche Vorgabe, universell, jedes Kochfeld regeln zu können wurde verworfen und es wird stattdessen eine einfache Kochplatte mit einem Kochfeld und 230V/50Hz 1P Netzanschluss als Aktor/Wärmequelle verwendet, diese wird mittels Relais und bool´scher Logik geschaltet.

Die Sensorik wird über einen IR-Wärmesensor (MLX90614) realisiert und die Logikkomponente ist ein Arduino Nano Clone.

Der Aufbau funktioniert soweit, allerdings habe ich um den Sensor in Betrieb zu nehmen auf eine vorhandene Bibliothek <Adafruit MLX90614.h> zurückgegriffen, die den Sensor, glaube ich, via I²C-Bus initialisiert.

Mein Problem ist nun folgendes, ich habe keine Ahnung Big Grin


...will konkret heißen, ich weiß nicht wie ich den Sensor, bzw. seine Werte weiter verarbeiten kann. Physikalisch ist dieser an A4 u A5 am Nano angeschlossen, wobei A4 Daten und A5 Clock entsprechen soll (SDA/SCL), soweit hab ich mich da schon belesen, https://www.i2c-bus.org/addressing/, leider komme ich da einfach nicht weiter. Ich habe den I²C-bus bei meinem spärlichen Versuch(siehe unten) bisher völlig ignoriert und einfach die Pins deklariert, bzw. Variablen val u val1 eingeführt...

Da kommt aber bisher kein valides Ergebnis bei rum. Mein Ziel ist eigentlich einen bereits in °C überführten Wert weiter verarbeiten zu können. Dieser existiert ja bereits, dank der Bibliothek (siehe die unteren Serial.print Zeilen).


Code:
#include <stdlib.h>
#include <stdio.h>
#include <wire.h>
#include <math.h>
#include <Wire.h>
#include <Adafruit_MLX90614.h>

Adafruit_MLX90614 mlx = Adafruit_MLX90614();

int ledPin = 4;
int relaisPin = 8;
int irPin1 = A4;
int irPin2 = A5;
int val = 0;
int val1 = 0;

void setup() {

  pinMode(ledPin, OUTPUT);
  pinMode(relaisPin, OUTPUT);
  pinMode(irPin1, INPUT);
  pinMode(irPin2, INPUT);
  
  Serial.begin(9600);

  mlx.begin();
}


void loop() {
  val = analogRead(mlx.readObjectTempC());
  val1 = analogRead(mlx.readObjectTempC());
  Serial.print(val);
  Serial.print(val1);
  digitalWrite(4, HIGH);
  digitalWrite(8, HIGH);
  Serial.print("Ambient = "); Serial.print(mlx.readAmbientTempC());
  Serial.print("*C\tObject = "); Serial.print(mlx.readObjectTempC()); Serial.println("*C");
  
  Serial.println();
  delay(500);
}


Ich habe noch viel mehr Fragen, da ich einfach von C und generell von Programmierung kaum/keine Praxiserfahrung habe. Allerdings ist oben beschriebenes meine "Hauptsorge". Ich hoffe, jemand von Euch findet Zeit mir ein bisschen unter die Arme zu greifen.

(Einen logischen Ansatz wie das Programm einmal aussehen soll habe ich erstellt[PAP] - Ich kann diesen einfach nur nicht umsetzen Confused)

LG moeGio
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.12.2019, 10:58 (Dieser Beitrag wurde zuletzt bearbeitet: 03.12.2019 11:54 von Tommy56.)
Beitrag #2
RE: MLX 90614 Ansteueren/Ansprechen
Wie willst Du ohne jegliche Kenntnisse Deinen Studienabschluss schaffen?

Fange mit dem Beispiel zu Deiner Lib an.

Dann schaust Du in die [url= https://github.com/adafruit/Adafruit-MLX...MLX90614.h ]Headerdatei[/url] und siehst in Zeile 55-58 dass die read-Methoden double zurück geben.
Double und float sind auf Arduino gleichbedeutend. Du brauchst also je eine Variable, in die Du den Wert einliest.
Code:
float temp1 = mlx.readAmbientTempC();
float temp2 = mlx.readObjectTempC();
Seril.println(temp2);

Bei Deinen Kenntnissen würde ich den 230V-Teil jemanden bauen lassen, der Ahnung davon hat.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.12.2019, 11:51
Beitrag #3
RE: MLX 90614 Ansteueren/Ansprechen
(03.12.2019 10:58)Tommy56 schrieb:  Wie willst Du ohne jegliche Kenntnisse Deinen Studienabschluss schaffen?

Fange mit dem Beispiel zu Deiner Lib an.

Dann schaust Du in die Headerdatei und siehst in Zeile 55-58 dass die read-Methoden double zurück geben.
Double und float sind auf Arduino gleichbedeutend. Du brauchst also je eine Variable, in die Du den Wert einliest.
Code:
float temp1 = mlx.readAmbientTempC();
float temp2 = mlx.readObjectTempC();
Seril.println(temp2);

Bei Deinen Kenntnissen würde ich den 230V-Teil jemanden bauen lassen, der Ahnung davon hat.

Gruß Tommy

...da weiß man nicht ob man sich bedanken oder einfach nur den Kopf schütteln soll...

1.) Mein Studium läuft exzellent... (Wirtschaftsingenierwesen...)
2.) Ich bin gelernter Industriemechatroniker, Schwerpunkt Automatisierungstechnik und seit vielen Jahren bei Siemens weltweit für Inbetriebnahme von Schienenfahrzeugen unterwegs...
3.)Dieses Beispiel was du erwähnst hab ich benutzt. Danke!
4.)Dein Link "Header" funktioniert nicht.
5.)Deine Gabe, Rückschlüsse zu ziehen ist, durch deine Aussagen bestätigt, einfach nicht vorhanden... Lass das in Zukunft doch einfach bleiben und um deiner Integrität willen, bleib sachlich...
...wie ich bereits geschrieben habe funktioniert der Aufbau, fachlich und sicherheitstechnisch sind da keinerlei Beanstandungen zu erwähnen.

Ich habe keine Kenntnisse von der Syntax jeglicher Programmiersprache, was du mir, wenn es dich glücklich macht, gerne vorwerfen kannst. Nur wen bringt das weiter?

Danke!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.12.2019, 11:57 (Dieser Beitrag wurde zuletzt bearbeitet: 03.12.2019 17:48 von Tommy56.)
Beitrag #4
RE: MLX 90614 Ansteueren/Ansprechen
Header-Link korrigiert.
Dass Du das Beispiel benutzt hast, sieht man Deinem Code nicht an.

Irgend jemand muss festgelegt haben, dass zum Abschluss Deines Studiums gehören soll, dass Du Dir Kenntnisse in der Programmierung aneignen sollst.
Dann solltest Du das auch tun und Dir nicht die fertige Lösung servieren lassen.

Außerdem hast Du die nötigen Informationen bekommen, um das Beispiel zu erweitern.

Ansonsten wünsche ich Dir noch viel Spaß, ich bin aus Deinen Themen raus.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.12.2019, 12:29
Beitrag #5
RE: MLX 90614 Ansteueren/Ansprechen
Zitat:Header-Link korrigiert.
Danke
Zitat:Dass Du das Beispiel benutzt hast, sieht man Deinem Code nicht an.
Ein aufmerksamer Leser bestimmt... aber ja, hätte man deutlicher machen können.
Zitat:Irgend jemand muss festgelegt haben, dass zum Abschluss Deines Studiums gehören soll, dass Du Dir Kenntnisse in der Programmierung aneignen sollst.
Dir fehlen wieder Hintergründe und Behauptungen helfen hier nicht...
FYI - Ich benötige die Kenntnisse im Rahmen eines interdisziplinären Projektes, welche völlig zufällig verteilt worden sind und oben angesprochenes Projekt ist das einzige von vielen wo derartige Kenntnisse gefragt sind.
Es handelt sich um ein Gruppenprojekt und ich habe mich "erbarmt" diesen Teil voranzutreiben, obwohl ich schon den gesamten Aufbau konzipiert und umgesetzt habe. Mein "Soll" im Rahmen des Projektes ist mehr als erfüllt. Leider kann man sich seine Gruppe nicht aussuchen...
Ich weiß auch nicht, warum du auf diesem Argument so beharren musst.
Zitat:Dann solltest Du das auch tun und Dir nicht die fertige Lösung servieren lassen.
Ich finde nicht, dass diese Behauptung gerechtfertigt ist. Hilfe erfragen ist völlig legitim und ein gewünschtes Vorgehen. Die Projektumsetzung steht uns völlig frei. Ich könnte die gesamte Programmierung auch extern vergeben, Budget ist genug vorhanden... Nur um endgültig deine Behauptung zu widerlegen. Ich muss nicht mal HALLO WELT hinkriegen um mein Studium ab zu schließen...

Zitat:Außerdem hast Du die nötigen Informationen bekommen, um das Beispiel zu erweitern.
Geht das nich ohne geflame?

Zitat:Ansonsten wünsche ich Dir noch viel Spaß, ich bin aus Deinen Theman raus.
Gleichfalls, auf wiedersehen!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
03.12.2019, 21:30 (Dieser Beitrag wurde zuletzt bearbeitet: 03.12.2019 21:30 von Tommy56.)
Beitrag #6
RE: MLX 90614 Ansteueren/Ansprechen
Dann vergib sie an einen externen Dienstleister. Da hat wenigstens die Wirtschaft noch etwas davon.

Was ist an der Info, dass Du die nötigen Infos zur Erweiterung des Standardbeispiels bekommen hast ein Flame?

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Externes "Ansprechen" von Variablen xXIchbinannonymXx 3 197 20.11.2019 20:20
Letzter Beitrag: Tommy56
  SPI Flash mit SD Library ansprechen/nutzen? tuxedo0801 1 1.344 24.03.2017 12:01
Letzter Beitrag: tuxedo0801

Gehe zu:


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