Link zur Hauptseite des Forums

LotharGehlhaar - Teichbauforum

DAS informative Forum der Koi-Szene
Link zur Enzyklopaedie
Aktuelle Zeit: Fr 11.Jul 2025 17:16

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 225 Beiträge ]  Gehe zu Seite Vorherige  1 ... 7, 8, 9, 10, 11, 12, 13 ... 23  Nächste
Autor Nachricht
BeitragVerfasst: Sa 17.Okt 2015 12:21 

Cash on hand: Locked
Guten Tag Gunter,
ich wollte Dir nicht auf den Schlips treten, sondern meine Idee mit Euch teilen!


Link zum Video


Pfiffikus hat geschrieben:
Hinweis:
Du hast die ersten beiden Bildschirmfotos mit unterschiedlichen Revisionen angefertigt. In Revision 297, in der ich den Skriptaufruf korrigiert hatte, wurde gleichzeitig noch die Zahl in Zeile 61 reduziert. Deshalb erscheinen im zweiten Bild (Revision 297) nur noch 10 Werte, während es vorher mehr waren. Das können wir uns hier erlauben, weil Dennis im Bash-Skript schon Mittelwerte bildet.

Ne das ist ja wohl der :hammer2: Gunter, warum sollte ich da etwas zu ungunsten manipulieren!

Ich habe gestern Abend eine Frisch verpackte Neu SD-Karte auf einen Neuen Frisch verpackten Raspberry Pi 2, Neu komplett aufgesetzt (hat übrigens Dank Doku. keine 60 min. gedauert ohne Fehler).

Zum Glück hast Du ja ein Ereignisprotokoll integriert:
Dateianhang:
Protokoll_Rev.297.jpg

Dateianhang:
Rev.297.jpg


Zwischen Bild eins und Bild zwei habe ich weder die Revision noch sonst was geändert!!!!

Wenn Du aber mal genau hinschaust gibt es doch offensichtlich einen Gewaltigen Unterschied.
Bild eins ist das Kalibrieren des US.-Sensors dort wird 40 mal der Wert ausgegeben auch in der aktuellen Revision und Bild zwei eine Auswertung der Pegelsensoren.

Dafür ist Doch die 40 in GetGenau verantwortlich und nicht DER PAUL

------------------------------------------------------------------------------------------------------------------------
/** ********************
* cPegelHCSR04Sensor::Kalibriere
* Stellt fest, wie hoch ueber dem Nullpegel der Sensor befestigt ist
**********************/
function Kalibriere($iNull) {
/** $Summe = 0;
for ($i=1;$i<11;$i++) {
$wert[$i] = $this->Messen();
$Summe += $wert[$i];
}
$this->myKalib = $Summe / 10 - $iNull;
*/
$this->myKalib = $this->GetGenau(40) - $iNull;
return $this->myKalib;
}
------------------------------------------------------------------------------------------------------------------------

Also lass bitte solche ......... :hallo: :hugg:

Fischkopf hat geschrieben:
Bei mir klappt alles wunderbar mit exec.

Pfiffikus hat geschrieben:
Dann nimm diese Art des Skriptaufrufes und alles ist gut.


Nein, damit war das hier gemeint:
Dateianhang:
$resultat=exec($Befehl, $eingang).jpg


Gunter in Deiner Teich-Steuerung wird ja sonst, die $retval (0) bzw. (1) Fehlermeldung mit den Pegelständen überschrieben!!!!

Das Heist bei system bekommst Du für $retval int(0) bzw. int(1) ausgegeben.
Dateianhang:
4_ $resultat=system($Befehl, $retval.jpg


Bei exec bekommst Du für $retval array(1) ausgegeben
Dateianhang:
2_$resultat=exec($Befehl, $retval.jpg


und wenn Du die mittels:
echo "<hr />Rückgabewert ist retval0: $retval[0] <br><br>";
anschaust stehen dort dann der Pegelwert und nicht das was Du erwartest.
Dateianhang:
3_$resultat=exec($Befehl, $retval.jpg



Pfiffikus hat geschrieben:
Pfiffikus,
der sich noch einmal genau ansehen wird, weshalb der Pegelverlauf ohne Daten bleibt

Yes

Pfiffikus hat geschrieben:
Pfiffikus,
der sich freuen würde, wenn Du eine Klasse für diesen mcp3008 comitten könntest


Bis dato hat doch keiner diese PFENNIGS-Artikel also macht es keinen Sinn.

Mit dem comitten und damit verbundenen Zurverfügungstellen im WWW ist es immer so eine Sache, da ich nicht alles selber erfunden habe weis ich nicht genau wem ich damit dann gewaltig auf den Schlips trete.
Einige Anwaltskanzleien warten nur auf irgendwelche berechtigten oder auch pseudo Ansprüche, die verdienen damit Ihre €, $.
Erst kürzlich berichtete Hier ein User öffentlich das eine Firma X Sachen von einer Firma Y nachgebaut hat, das ist ja soweit nicht schlimm. Der User verwendete aber eindeutige Firmennamen und Produktbezeichnungen.
Die Anwälte der Firma würden sich die Hände reiben wenn jemand ...........

Ich bin aber gerne bereit dabei zu helfen, Treiber Installation, wo bekomme ich den Input her, wie füge ich es zusammen usw....


Nach oben
  
 
BeitragVerfasst: Sa 17.Okt 2015 15:29 

Cash on hand: Locked
Fischkopf hat geschrieben:
Pfiffikus hat geschrieben:
Pfiffikus,
der sich noch einmal genau ansehen wird, weshalb der Pegelverlauf ohne Daten bleibt

Yes


Hallo Gunter,
der Pegelverlauf ist ohne Daten, da die Datenbank unter messwerte auch keine Daten des installierten HCSR04 Sensors aufweist.

Lediglich unter den sensoren ist die Kalibrierung aufzufinden.

Fehlt hier evtl. der prefWert in der PEGEL_CONFIG ?

Da ich die Datenbank so nicht mag, kenne ich mich damit nicht aus. (Es sei denn, ich könnte die Datenbank auf ein Externes Speichermedium installieren und so wie hier nutzen, ist aber eigentlich nicht nötig)


Nach oben
  
 
BeitragVerfasst: So 18.Okt 2015 21:20 
Offline
Realer User
Realer User
Benutzeravatar

Registriert: Mo 14.Nov 2005 20:39
Cash on hand:
5.741,65 Taler

Beiträge: 14531
Wohnort: 07548 Gera
Hallo Paul,

Fischkopf hat geschrieben:
Ne das ist ja wohl der :hammer2: Gunter, warum sollte ich da etwas zu ungunsten manipulieren!

niemand hat Dir unterstellt, Du hättest irgendetwas manipuliert. Ich war nur der Meinung, Du hattest Dich über die unterschiedliche Anzahl der Werte gewundert, weil die Pfeilspitzen dort hin gezeigt hatten.
Aus diesem Grunde hatte ich mir diesen Hinweis erlaubt, dass ich diesen Standard-Wert in der letzten Revision verändert hatte, ohne das im Forum zu erwähnen.

Fischkopf hat geschrieben:
Wenn Du aber mal genau hinschaust gibt es doch offensichtlich einen Gewaltigen Unterschied.
Bild eins ist das Kalibrieren des US.-Sensors dort wird 40 mal der Wert ausgegeben auch in der aktuellen Revision und Bild zwei eine Auswertung der Pegelsensoren.

So ist es, beim Kalibrieren darf es schon ein wenig genauer sein. Aus diesem Grunde wird nicht mit dem Standardwert, sondern mit der 40 gearbeitet.




Die Messwerterfassung mit dem Skript von Dennis funktioniert jetzt. Wenn ein Programmteil die Funktion Get() der Sensorklasse aufruft, kommt ein sinnvoller Wert heraus. Das zeigt auch Dein Bild mit dem Pegelstand der Vorkammer. Damit kann man die Klasse cPegelHCSR04Sensor erstmal so lassen, bis man Zeit für die Optimierung findet.
Der Fehler, der die Protokollierung verhindert, muss außerhalb dieser Klasse zu suchen sein. Das ist ja das schöne an der objektorientierten Programmierung.

Fischkopf hat geschrieben:
Pfiffikus hat geschrieben:
Pfiffikus,
der sich freuen würde, wenn Du eine Klasse für diesen mcp3008 comitten könntest


Bis dato hat doch keiner diese PFENNIGS-Artikel also macht es keinen Sinn.

Hier haben wir ein Henne-Ei-Problem, aber leichter lösbar.

Solange diese Pfennig-Artikel nicht von unserer Software unterstützt werden, wird sich kaum jemand solche Teile bestellen und hinlegen.
Darüber bin ich auch recht froh. Denn hätten jetzt schon 5 oder 6 Leute solche Bausteine erworben, dann gäbe es hier regelmäßig Nachfragen, wann die Dinger endlich mal von der Teichsoftware unterstützt werden. Und wenn die Klasse dann nicht zeitnah ergänzt werden, gibt es Enttäuschungen.

Anders herum, so wie es jetzt läuft, ist es mir lieber. Jemand, der schon so einen Baustein im Einsatz hat, stellt uns sein Skript zur Verfügung, schreibt die dazugehörige Klasse und das wird comittet. Und wenn dann ein Benutzer merkt, dass man auch solche analogen Messungen durchführen kann, dann werden sich nach und nach interessierte Bastler einen solchen Schaltkreis bestellen und die Schaltung nachbauen.

Fischkopf hat geschrieben:
Mit dem comitten und damit verbundenen Zurverfügungstellen im WWW ist es immer so eine Sache, da ich nicht alles selber erfunden habe weis ich nicht genau wem ich damit dann gewaltig auf den Schlips trete.

Diese Bedenken sind berechtigt. Bisher habe ich nur Bildmaterial in die Software eingebaut, für die ich die Rechte beschafft habe oder das gemeinfrei ist.
Bei Code ist es ähnlich. Es sind gemeinfreie Teile in die Software eingebaut (Datenbankroutinen aus dieser Forensoftware, Grafikerzeugung,..) oder es wurden Dinge veröffentlicht, die auf unserem Mist gewachsen sind. Selbst wenn ich einzelne Zeilen aus Anleitungen kopiert habe, ist das zulässig, denn diese Einzelbausteine erreichen noch keine Schöpfungshöhe, die einen urheberrechtlichen Schutz gewährleisten.


Fischkopf hat geschrieben:
Einige Anwaltskanzleien warten nur auf irgendwelche berechtigten oder auch pseudo Ansprüche, die verdienen damit Ihre €, $.
...
Der User verwendete aber eindeutige Firmennamen und Produktbezeichnungen.

Hier geht es eher um Markenrechte. Soweit mir bekannt ist, werden die in unserem Falle nicht berührt. Und wenn Du in diesen Dingen Fragen hast, her damit. Das klären wir schon ab. Solche Bedenken müssen Dich nicht bremsen.


Pfiffikus,
der keine Softwareteile in den Stamm integrieren wird, bei denen er rechtliche Bauchschmerzen hat


Nach oben
 Profil userposition on geomap  
 
BeitragVerfasst: So 18.Okt 2015 23:03 

Cash on hand: Locked
Hallo Gunter,
ne tut mir leid, aber leider kannst Du den Teil der Steuerung bis Dato knicken.

Von geschönten Sachen halte ich übrigens Garnichts deshalb immer offen und ehrlich von mir geschrieben!!!

Beim Kalibrieren macht Du mindestens 400 Messungen. Was soll das alles?

$Befehl = 'sudo '.$datei.' '.$pins[0].' '.$pins[1].' 10';
X
$this->myKalib = $this->GetGenau(40) - $iNull;

Im Normal Betrieb mindestens 100 Messungen.

$Befehl = 'sudo '.$datei.' '.$pins[0].' '.$pins[1].' 10';

X

function GetGenau($iAnz = 10) {

Gespeichert wird auch nichts daher klappt weder Steuerung noch Regelung.

Der Knackpunkt ist hier Doppelt und Dreifache übertriebene Mittelwertbildung.

Wenn Du den Schmalz hier Raus wirfst klappt auch wieder das Speichern in der Datenbank!!!
________________________________________________________________________________
/** ********************
* cPegelHCSR04Sensor::GetGenau
Liest die Entfernung des Sensors oefters aus
**********************/
function GetGenau($iAnz = 10) {

for($i=0;$i<$iAnz;$i++) {
$wert[$i] = $this->Messen();
}

// Schiebe das Intervall von 0 bis 11000 mm
$maxtreffer = 0; $Mittelwert = 0;
for ( $i=0 ; $i<12000 ; $i++) {
$treffer = 0; // Zaehle die Treffer
foreach ($wert AS $Pkt) {
if (($Pkt > $i-4) AND ($Pkt < $i+4)) $treffer++;
}

// Wenn mehr Treffer als $maxtreffer, dann aktualisiere $Mittelwert und $maxtreffer
if ($treffer > $maxtreffer) {
$maxtreffer = $treffer;
$Mittelwert = $i;
}

// Wenn ueber $iAnz/2 Treffer vorzeitiger Abbruch des Schiebens
if ($treffer > $iAnz / 2) break;
}

// Bei defektem Sensor
if ($Mittelwert < 1) return 0;
// Das ist etwa die Mitte des Intervalls, liefert die in PHPUnit vorgegebenen Messwerte
return $Mittelwert+3;
}
...................................
$this->myKalib = $this->GetGenau(40) - $iNull;

________________________________________________________________________________
Warum liest Du nicht einfach wie damals besprochen die Werte aus dem echolot.py, dort war doch schon von Dir der Wunsch:
#--------------------------------------------#
#----------Mittelwert ermitteln--------------#
#--------------------------------------------#
def GetAverage(lDistance):
#Listenlaenge ermittteln
lengthList = len(lDistance)



desweiteren überlas doch den User die Wahl
#Wie oft soll gemessen werden
Counter = int(sys.argv[3])

also $Befehl = 'sudo '.$datei.' '.$pins[0].' '.$pins[1].' .$pins[2]';

Manchmal ist weniger mehr, dann klappt DEIN PHP.SKRIPT auch wieder, aber Leider konntest Du HIERBEI keine +P. Sammeln.

Ich lösche die SD-Karte nun wieder, dann habe ich auch keinen Anlass mehr hierzu Kritik zugeben und ziehe mich zurück, der Laba Hannes kann das übernehmen.

Ps. Manchmal verdrehst Du einfach die Sachlage wie ein Politiker, warum (alles nur Hobby zum Spa̱ß, schon vergessen :hallo: ?)


Nach oben
  
 
BeitragVerfasst: Mo 19.Okt 2015 5:57 
Offline
Realer User
Realer User
Benutzeravatar

Registriert: Mo 14.Nov 2005 20:39
Cash on hand:
5.741,65 Taler

Beiträge: 14531
Wohnort: 07548 Gera
Hallo Paul,

Fischkopf hat geschrieben:
Gespeichert wird auch nichts daher klappt weder Steuerung noch Regelung.

die Ursache, warum bei mir keine Werte aufgenommen worden sind, habe ich gefunden. Ich hatte die ganze Zeit mit dem Stamm der Software gearbeitet. Aber schau mal die Cron-Zeile an!

Dateianhang:
Testraspi1.png
Testraspi1.png [ 78.1 KiB | 4852-mal betrachtet ]


Nun zeichnet er wieder brav die Werte auf.

Die Klasse muss in jedem Falle noch einmal optimiert werden. Insbesondere das Kalibrieren dauert unnötig lange.


Pfiffikus,
der darauf hinweist, dass man diese Kalibrierung nur einmal bei Inbetriebnahme anklicken muss


Nach oben
 Profil userposition on geomap  
 
BeitragVerfasst: Mo 19.Okt 2015 13:18 
Offline
Anonymer User
Benutzeravatar

Registriert: Do 03.Jan 2013 13:07
Cash on hand:
3.339,23 Taler

Beiträge: 646
Hallo Zusammen,

erst einmal möchte bei euch für den Support bedanken.

Dazu fällt mir eine kleine Geschichte ein.

Frei zitiert:
"
Der Professor hält im Unterricht ein Buch hoch und ruft. "Dieses Buch ist rot"

Die Klasse schaut ungläubig und wiederspricht, "Nein, es ist schwarz"

Der Professor antwortet " Das ist falsch, es ist rot"

Die Klasse wiederspricht wehement " Nein es ist schwarz"

Darauf dreht der Professor das Buch um und die Rückseite ist rot.

Er sprach darauf: "Sage niemals jemanden, er liege falsch, solang du das Problem nicht aus seiner Sicht gesehen hast"
"

Also bitte nicht falsch verstehen, aber wir machen das hier alle nicht um Reich zu werden. Somit erst einmal ein Dank an alle die hier mitgewirkt haben. :hugg:

Ich arbeite im Bereich der Entwicklung und weiß, dass man sich z.B. bei einigen Features nie einigen wird und es letzendlich immer den EINEN geben wird der die Entscheidung treffen muss oder wird.

Fischkopf hat geschrieben:
Hallo Gunter,
ne tut mir leid, aber leider kannst Du den Teil der Steuerung bis Dato knicken.


Hallo Paul, ja ich sehe hier auch noch Verbesserungspotenzial ohne mich jetzt mit PHP groß auszukennen. Aber das hat Pfiffikus ja schon eingeräumt.

Fischkopf hat geschrieben:
Beim Kalibrieren macht Du mindestens 400 Messungen. Was soll das alles?

$Befehl = 'sudo '.$datei.' '.$pins[0].' '.$pins[1].' 10';
X
$this->myKalib = $this->GetGenau(40) - $iNull;

Hier sehe ICH sogar einen Vorteil:
Es passiert manch mal, dass aus irgendwelchen Gründen der Raspberry nicht die korrekte Länge ermittelt. Siehe bei meinen Oszilloskop Aufzeichnungen bzw , da sind unter bestimmten Umständen einige Ausreißer dabei, die auch mal gerne 3 oder 4 mal hintereinander auftreten. Das hätte beim kalibrieren auf die folgenden Messungen einen enormen Einfluss, da jedes mal falsch gemessen werden würde. Ich denke nicht das ein bis zwei mal am Tag falsch messen einen großen Einfluss hätte (Mehr Wasserwechel, hat man halt kein "konade Misu" oder so mehr :)). Deshalb würde ich die Kalibrierung so stehen lassen. DFa das kalibrieren ja nur ein paar mal durchgeführt wird könnte ich auch mit 10 min leben.
Dateianhang:
10msVS100ms.png
10msVS100ms.png [ 33.1 KiB | 4808-mal betrachtet ]



Fischkopf hat geschrieben:
Im Normal Betrieb mindestens 100 Messungen.
$Befehl = 'sudo '.$datei.' '.$pins[0].' '.$pins[1].' 10';

Dies würde ich auch verändern. Dort würde ich meiner Meinung nach einmal messen reichen. :) MAn könnte auch zwei mal messen und vergleichen, ob die Werte z.B. max 10% voneinander abweichen. Falls die Abweichung > 10% dann noch einmal messen. Oder so Ähnlich.


Fischkopf hat geschrieben:
Ich lösche die SD-Karte nun wieder, dann habe ich auch keinen Anlass mehr hierzu Kritik zugeben und ziehe mich zurück, der Laba Hannes kann das übernehmen

Es fände es Schade, wenn du dich zurück ziehen würdest. Manchmal braucht jeder nur einen Gedankenanstoss von jemand anderes um Geniale Sachen hervor zu bringen. Kritik ist immer positiv zu verstehen, so lange Sie sachlich bleibt. :) Ich denke da spreche ich auch für Gunther.

Ich wollte mit meiner Anregung jedenfalls keinen Streit auslösen.

_________________
____________________
Viele Grüße
Dennis
____________________


Nach oben
 Profil userposition on geomap  
 
BeitragVerfasst: Mo 19.Okt 2015 13:19 
Offline
Anonymer User
Benutzeravatar

Registriert: Do 03.Jan 2013 13:07
Cash on hand:
3.339,23 Taler

Beiträge: 646
Aber ich werde nicht schlau daraus was ihr verändert habt, damit es läuft. Könnt ihr das evtl noch einmal genauer beschreiben. Weil ich gerne das Problem verstehen würde. :hammer2: :hammer2: :hammer2: :hammer2: :hugg:

_________________
____________________
Viele Grüße
Dennis
____________________


Nach oben
 Profil userposition on geomap  
 
 Betreff des Beitrags: Werbung, um Taler einzunehmen
Verfasst: Fr 11.Jul 2025 17:16 
Online
Expertin
Benutzeravatar

Registriert: Mo 05.Dez 2005 19:01
Cash on hand:
immer zu wenige Taler

Beiträge: nur ein paar
Wohnort: Koi-Schnack
Anzeige:

_________________
Wenn du einen Monat lang ein werbefreies Forum willst, klicke hier und überweise mir 100 Taler!
Wenn du mich im Koi-Schnack etwas fragen möchtest, klicke hier!


Nach oben
 Profil Private Nachricht senden  
 
BeitragVerfasst: Mo 19.Okt 2015 13:31 
Offline
Realer User
Realer User
Benutzeravatar

Registriert: Mo 14.Nov 2005 20:39
Cash on hand:
5.741,65 Taler

Beiträge: 14531
Wohnort: 07548 Gera
Hallo Dennis,

Du hattest das Skript wahrscheinlich mit einem Windows-Programm umgeschrieben. Dementsprechend waren die Zeilenumbrüche nach Windows-Manier codiert.
https://de.wikipedia.org/wiki/Zeilenumb ... enumbruchs
In diesem Artikel wird auch gezeigt, wie man die Codierung in einem Hexadezimal-Editor ansehen kann.

Nachdem ich die eilenenden nach Unix-Art umgeschrieben hatte, lief es korrekt.


Pfiffikus,
der vermutet, dass die bash nicht richtig mit diesen Windows-Zeilenumbrüchen umgehen konnte


Nach oben
 Profil userposition on geomap  
 
BeitragVerfasst: Mo 19.Okt 2015 14:12 
Offline
Anonymer User
Benutzeravatar

Registriert: Do 03.Jan 2013 13:07
Cash on hand:
3.339,23 Taler

Beiträge: 646
Pfiffikus hat geschrieben:
Hallo Dennis,

Du hattest das Skript wahrscheinlich mit einem Windows-Programm umgeschrieben.


Ja das stimmt. Win7 mit Notepad++ :hammer3:

Pfiffikus hat geschrieben:
https://de.wikipedia.org/wiki/Zeilenumb ... enumbruchs
In diesem Artikel wird auch gezeigt, wie man die Codierung in einem Hexadezimal-Editor ansehen kann.

Werde es heute abend mal probieren :)

Danke :D

_________________
____________________
Viele Grüße
Dennis
____________________


Nach oben
 Profil userposition on geomap  
 
BeitragVerfasst: Mo 19.Okt 2015 15:34 

Cash on hand: Locked
Hallo Zusammen,


Zitat:
Es fände es Schade, wenn du dich zurück ziehen würdest. Manchmal braucht jeder nur einen Gedankenanstoss von jemand anderes um Geniale Sachen hervor zu bringen. Kritik ist immer positiv zu verstehen, so lange Sie sachlich bleibt. :) Ich denke da spreche ich auch für Gunther.


Danke Dennis, ausschlaggebend war da der Paulinchen der mir mit dem "bl..." blabla auf den Sack geht.

zusätzlich kam das noch mit dem ungläubigen Beweisführungen.

Außerdem muss ich doch keinem was beweisen.

Gunter lösche bitte diese http://svn.koi-gehlhaar.de/steuerung/zweige/Fischkopf/ und http://svn.koi-gehlhaar.de/steuerung/zweige/Fischkopf2

Sie gehören ja nicht zu dem Nutzungsvertrag dieses Forums und ich benötige das nicht und möchte damit auch nicht in Zusammenhang gebracht werden!
Danke.


Nach oben
  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 225 Beiträge ]  Gehe zu Seite Vorherige  1 ... 7, 8, 9, 10, 11, 12, 13 ... 23  Nächste

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de