TDK CH101 Ultraschallsensor auslesen

#6519175
Lesenswert?

Hallo,

ich versuche nun schon seit über einem Monat den Ultraschallsensor CH101 
der Firma TDK mit dem ESP32-Board auszulesen.
Leider habe ich noch keine Lösung gefunden.
Die I2C-Verbindung ist bereits hergestellt worden.
Kennt jemand den CH101 Sensor und kann mir helfen?

Danke im Voraus.


Viele Grüße
nimo1012
#6519293
Lesenswert?

Hallo,

der CH101 braucht ja erstmal seine Software per I2C, mit welcher er dann 
arbeitet. Der Speicher da drin ist flüchtig, weshalb er bei jedem Start 
wieder erst die Software braucht. TDK hat ein Beispielprojekt für einen 
Atmel-Mikroprozessor online, welches bei mir gut auf Anhieb 
funktionierte. Auf anderen Mikroprozessoren habe ich es leider noch 
nicht getestet.

Aber sei gewarnt, der CH101 funktioniert faktisch gar nicht mit dem 
Original Ultraschallhörnchen drauf. Da kannst die Werte auch einfach 
Würfeln. Bei den von TDK online gestellten hat bei mir am besten das 
recht hohe ovale funktioniert, aber auch das ist noch nicht das Maximum, 
was der Sensor schaffen würde. Bei glatten Oberflächen wurden 
Reichweiten bis etwas über einem Meter erreicht, mit einem 
selbstdesignten Ültraschallhörnchen.

Grüße

Patrick
#6519957
Lesenswert?

Hallo Patrick,

Mit welchem Atmel-Mikrocontroller hast du die Sensoren angesprochen?
Ich habe mir das DK-CH101 Development Board gekauft. Jedoch können da 
leider nur 4 Sensoren direkt angeschlossen werden.
Die Dokumentation zu diesem Board ist leider nur sehr spärlich. Es gibt 
keine Informationen über weitere Ein/Ausgänge.
Für mein Projekt will ich 12 Sensoren ohne Ultraschallhörnchen 
anschließen, um einen möglichst großen Öffnungswinkel zu erhalten.


Viele Grüße
nimo1012
Gast #6767856
Lesenswert?

Versuche nun auch schon seit zwei Wochen den CH101 bzw. CH202 ohne das 
TDK Eval Board zum Laufen zu bekommen.
Leider gibt es von TDK nur ein Atmel Studio Projekt für einen SAMG55 
Controller. Dieses Projekt kann ich einwandfrei importieren und Builden.

Aber der Transfer dieses Codes auf einen Arduino Due (SAM3X) übersteigt 
bei Weitem meine Programmierkenntnisse. Das Problem ist: Das 
Beispielprogramm "Hello Chirp" hat so ziemlich alles implementiert, was 
man mit dem Sensor machen kann. Wenn man nur einzelne Messungen 
antriggern und auslesen will, kann man vermutlich 90 % des Quellcodes 
auskommentieren. Auch in dem Atmel-Studio Projekt sind vermutlich 90 % 
toter Code wie z.B. SPI Bibliotheken mit drin.
Dann scheint es noch mehrere Abstraktionsschichten zu geben: Die 
Sensorbibliothek hat generische Funktionen, die auf Atmel (ASF) 
generische Funktionen zugreifen, die wiederum auf eine 
Plattformspezifische Funktion zugreifen.
> Für jemand der sich nicht mit Atmel-Controller und Atmel-Studio auskennt die 
Hölle...

Leider findet man im Internet nirgends einen abgespeckten Quellcode, den 
man dann zu Fuß auf den SAM3X umschreiben könnte. Letztlich benötigt man 
doch nur 2 logische I2C-Schnittstellen: Eine zum Flashen der 
Sensorfirmware und eine zur anschließenden Kommunikation mit dem Sensor 
und dann noch maximal 2 GPIOs für die Sensorplatine...

Kennt vielleicht jemand einen solchen Minimal-Quellcode?
#8081073
Lesenswert?

Hallo allerseits ich versuche auch gerade einen CH201 auf einem ESP32 ans Laufen zu bekommen, ich nutze die aktuelle SonicLib von TDK (Version 4.9.0) - soweit ich mit dem I2C Analyzer sehe, wird der Sensor an sich gefunden und die SensorLib schreibt auch die Firmware über die Adresse 0x45.

Wenn dann aber irgendwann die Firmware gestartet wird (Kommando C2 02) sollte dann irgendwann die Funktion chdrv_group_wait_for_lock Erfolg haben und das passiert bei mir nicht.

Diese Funktion sendet einen Register-Read an den Sensor, nun auf Adresse 0x29 und mit Register Adresse 0x14. Das Schreiben der Adresse 0x29 wird mit einem ACK beantwortet, aber das nächste Byte, die Register-Adresse 0x14 mit einem NACK und weiter komme ich nicht.

Ich habe mich auch schon durch diverse Beispeile durchgesucht (zB https://www.arduinolibraries.info/libraries/c-hx01) aber auch dort nichts hilfreiches gefunden.

Kann hier evt jemand helfen ? - danke

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren