- LiFePO4 Speicher Test         
Ergebnis 1 bis 8 von 8

Thema: Nibobee Ultraschall - wie anschließen ?

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    28.11.2011
    Beiträge
    21
    hallo mic,

    danke für deine ausführliche antwort !!

    also so versteh ich das eigentlich was zu tun ist, nur der Sinn/Idee dahinter is mir noch schleierhaft..

    warum schließt du das an x4 an & nicht an einem der anderen ? ist es nur da möglich ? wenn ja an was merkt man das ?

    wo soll ich den servo für die Drehung des US anschließen ?

    woher weiß ich ob meine erweiterung, seien es irgendwelche weiteren abstandssensoren an einen digitalen oder analogen port müssen ?

    ich weiß, sind einige fragen hab aber schon einige zeit mit google verbracht, jedoch zum 'wo schließt man was am besten an' nicht viel gefunden!

    Danke & Grüße Manii

  2. #2
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Aller Anfang ist schwer.

    X4 habe ich gewählt, weil ich mir die C-Pins gut merken kann und weil sie Bit0 und Bit1 am Port belegen. Prinzipiel kannst du mit allen Pins digitale (high/low) Signale auswerten. Da aber nur ein paar Pins auch analoge Signale einlesen können sind diese Pins "wertvoller" und man versucht, diese für spätere Erweiterungen frei zu halten.

    Die Signale deines SRF05 sind eindeutig digital:
    Bild hier  

    Hier noch das überarbeitete Programm:
    Code:
    // SRF05 Ansteuerung mit der bee (zweiter Anlauf)                               mic 4.6.12
    
    // Anschluß an X4: Vcc, GND, PC0=Start, PC1=Messwert (SRF04-Modus)
    // Datenblatt SRF05: http://www.robotikhardware.de/download/srf05doku.pdf
    // https://www.roboternetz.de/community/threads/58058-Nibobee-Ultraschall-wie-anschlie%C3%9Fen
    
    #include <avr/io.h>
    #include <util/delay.h>
    
    uint8_t messwert, timeout;
    
    int main(void)
    {
    	DDRB = 0b0001111; // Die Pins der Leds sind Ausgang
    	PORTB &= 0b11110000; // 0V ausgeben. Die Leds sind aus
    	DDRC = 0b00000001; // Im Datenrichtungsregister PC0 als Ausgang definieren (Bit 2^0)
    	PORTC &= ~(1<<PC0);// 0V ausgeben an PC0
    	
    	PORTB |= 0x0f; // alle Leds an
    	_delay_ms(1000); // eine Sekunde warten
    	PORTC &= 0xf0; // alle Leds wieder aus
    	
    	while(1)
    	{
    		messwert=0;
    		timeout=0;
    		PORTC |= 1; // Startimpuls ausgeben
    		_delay_us(20); // der Impuls muss mindestens 10µs dauern
    		PORTC &= 0xfe; // Startimpuls fertig
    
    		while(!(PINC & 0b00000010) && --timeout) _delay_ms(4); // timeout 1 Sekunde
    		if(timeout>0)
    		{
    			while((PINC & 2) && (++messwert<16)) // Überlauf bei 16
    			{
    				_delay_us(1666); // 25ms/16-Schritte
    			}
    
    			if(messwert<16) // wir können nur 4 Bit anzeigen
    			{
    				PORTC &= 0xf0; // alle Leds aus
    				PORTC |= messwert; // Messwert dual anzeigen
    			}
    		}
    	}
    	return 0;
    }
    Auf das Servo mag ich im Moment noch nicht eingehen, aber du kannst dich schon mal einlesen:
    http://www.google.de/search?q=servosignal

    Gruß

    mic
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken srf05_timing.png  
    Geändert von radbruch (04.06.2012 um 21:02 Uhr)
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    28.11.2011
    Beiträge
    21
    hey,

    ok jetzt kann ich mir das schon bisschen besser vorstellen

    das mit dem programmcode versteh ich von der logik her auch. Nur weiß ich noch nicht, wie ich jetzt zum erstmaligen testen den US anschliessen soll, so dass ich ihn dann aber wieder abnehmen kann für die eigentliche Erweiterung mit Servo.

    gibt es da irgendwelche steckverbindungen ?
    welche kabel nehme ich, um die pins mit dem US zu verbinden ? Hab ein Bild (glaube im Datenblatt) mit so nem rot-schwarzen kabel gesehn..
    brauch ich da noch irgendwelche elemente(widerstand, kondensator) zwischen den pins und US ?

    Hab aus interesse mal nachgeschaut was eig I2C ist und gelesen,. dass man damit ICs miteinander verbinden kann, heißt das, ich kann zB noch nen atmega16 dranhängen und dessen ports für erweiterungen benützen ?(nur mal interessehalber )

    was bedeutet 'mir die C-Pins besser merken kann', was sind C pins ?

    danke danke !!

    Grüße !

  4. #4
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    61
    Beiträge
    5.799
    Blog-Einträge
    8
    Hallo

    Zum Anschliessen würde sich die Kombination aus Stift- und Buchsenleisten und ein Flachbandkabel anbieten:
    http://www.conrad.de/ce/de/product/736500/
    http://www.conrad.de/ce/de/product/736765/
    http://www.conrad.de/ce/de/product/601922/
    (gibt's natürlich in allen Variationen bei allen Versendern)

    Das SRF kannst du direkt mit dem X4 verbinden: GND auf GND, VCC auf 5V, PC0 auf "Start Signal Eingang" und PC1 auf "Messergebniss Ausgabe"

    Damit ich nicht dauernd zwischen Schaltplan und Programmeditor zappen muss wählte ich Pins vom Port C, die C-Pins eben. Der Mega16 der bee hat übrigends vier Ports: A, B, C und D. Viele Pins haben spezielle Funktionen:
    http://www.atmel.com/Images/doc8154.pdf

    Über I2C können nicht nur Kontroller miteinander kommunizieren. Viele ICs kennen diese Schnittstelle:
    http://de.wikipedia.org/wiki/I%C2%B2C

    Gruß

    mic
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    28.11.2011
    Beiträge
    21
    hey mic,

    super danke ! bei dem kabel brauch ich dann nur (3 sinds glaub ich) adern runternehmen und diese werden beim US direkt angelötet und auf der anderen seite der kabel dann die buchse. bei der bee die stecker und dann kann ich das schön an und abstecken, je nachdem obs gebraucht wird oder nicht... richtiger Weg ?

    Grüße Manii

Ähnliche Themen

  1. Antworten: 103
    Letzter Beitrag: 05.09.2011, 23:00
  2. ACS an NIBObee
    Von pacman im Forum Sonstige Roboter- und artverwandte Modelle
    Antworten: 37
    Letzter Beitrag: 20.06.2011, 00:05
  3. ACS an NIBObee
    Von pacman im Forum Sensoren / Sensorik
    Antworten: 6
    Letzter Beitrag: 06.06.2011, 09:32
  4. NiboBee und die Leuchtdioden
    Von Rabenauge im Forum Sonstige Roboter- und artverwandte Modelle
    Antworten: 13
    Letzter Beitrag: 23.04.2010, 20:27
  5. Fernbedienung von Ir auf Ultraschall Ultraschall auf ir
    Von Firestorm1711 im Forum Elektronik
    Antworten: 0
    Letzter Beitrag: 12.05.2005, 18:32

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress