- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 24

Thema: Hexacopter

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    32
    Beiträge
    1.578
    Hi,

    ja 10A sind bei der Größe noch vollkommen im Rahmen. "Stärkere" Motoren würde ich nur verwenden, wenn ich extrem viel Schub brauche, z.b. bei nem großen Hexa- oder Octocopter mit ner riesen Spiegelreflex unten dran o.ä.
    Also ich hab auch nen 32A4 verwendet, der ist jetzt zu 70% voll, es fehlen aber noch GPS und Drucksensor. Das geht zwar noch rein, aber dann ist Schluss.
    Wenn du den XMega verwendest, brauchst du keine I2C - PWM Converter mehr. Der XMega hat genügend Hardware-PWM Ausgänge mit 16Bit Auflösung

    Gruß
    Chris

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    26.06.2008
    Alter
    34
    Beiträge
    59
    Hi,

    alles klar, dann werde ich mal mit den kleinen Motoren anfangen, umrüsten kann man ja dann später noch.

    Okay, das ist dann doch relativ voll. Ich weis ja noch nicht so ganz was da alles auf mich zu kommt

    Stimmt ja, habe nur die 5 Timer gesehen, und dachte an 6 Motoren...
    Aber es sind ja die PWMs, die ich brauche.

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    32
    Beiträge
    1.578
    Ja klar, erstmal billig anfangen und wenns dann funktioniert auf Qualität setzen! So hab ich das auch gemacht (gottseidank)..
    Jeder 1. Timer / Port hat 4 PWMs und jeder 2. Timer / Port hat 2 PWMs, immer 16Bit.

    Gruß
    Chris

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    26.06.2008
    Alter
    34
    Beiträge
    59
    Sollte ich denn noch eine Überwachung für den Lipo einbauen?
    Oder ist ein Wächter im Regler?

    Und wie ist die Beschaltung ESC - AVR? Reicht eine einfache Verbindung zwischen PWM und dem Regler?

    Habe im Anhang mal den ersten Schaltplan - eventuell könnt ihr mal einen Blick darauf werfen.

    mainboard V1.0.pdf

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.09.2007
    Ort
    Berlin
    Alter
    32
    Beiträge
    1.578
    Hi,

    es ist kein Muss, aber Schaden wirds bestimmt nicht
    Die Regler haben in der Regel eine Unterspannungsabschaltung, diese kann man manchmal programmieren, sodass entweder der Strom runtergeregelt wird (auf 70%) oder die Motoren komplett abschalten (nicht zu empfehlen).
    Es reicht eine Verbindung der PWM-Ports zu den Reglern, die Masse wird über den Akku sowieso verbunden.

    Gruß
    Chris

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    26.06.2008
    Alter
    34
    Beiträge
    59
    So, die Platinenlayout ist fertig & die ersten Bestellungen sind raus
    - ATXMega32 + Quarz etc
    - 2 Motoren, 2 Regler, 2 Propeller
    - MPU6050 auf Breakoutboard
    Denke das sollte für den Anfang reichen!?

    Könnt ihr mir denn noch etwas theorie empfehlen?
    z.B. - Wie ich mit den Daten des Gyro + Beschleunigungssensor umgehen muss / Wie erreiche ich es, dass sich die 2 Propeller, an einer Wippe, ausbalancieren?
    - Regelungstechnik (Schritte zu einem gut funktionierenden PID-Regler, und dessen Funktion (Wikipedia kenn ich da Schon, gerne etwas praktischer, in C ))
    - ...

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    26.06.2008
    Alter
    34
    Beiträge
    59
    Hallo zusammen, nun hat sich doch ein Problem aufgetan - der I2C.

    Ich habe aus Atmels ASF die TWI-Integration.

    Das Protokoll des MPU6050 ist mir klar, steht ja im Datenblatt

    Start-Bedingung - Adresse - Write bit - ACK vom MPU - Register-Adresse - ACK vom MPU
    Start-Bedingung - Adresse - Readbit - ACK vom MPU - Byte vom MPU - NACK vom Master - Stop Bedingung.
    Nun habe ich einige male die TWI-Docs von Atmel "durchgeblättert", aber so wie es mit schein stehen mir nur die
    twi_master_write() und twi_master_read() - funktionen zur verfügung.

    Von den ATMegas kenne ich Fleurys lib, mit Mauellem senden von Start/Stop/(N)ACK/etc.
    Wie genau das die Lib von Atmel macht, konnte ich nicht herausfinden :-/

    Ich habe es nun wie folgt umgesetzt (davon ausgehen, dass Atmel das schon richtig macht):
    Code:
    uint8_t data_received[10];
    
    
    void mpu6050_readByte(uint8_t regAddr) {
    
    	 
    	 usart_serial_write_packet(USART_DEBUG, "START-Read\n", strlen("START-Read\n"));
    		 uint8_t *data = regAddr;
    		 twi_package_t packet_write = {
    			 .chip         = MPU6050_ADDR,      // TWI slave bus address
    			 .buffer       = data,			// transfer data source buffer
    			 .length       = 1		// transfer data size (bytes)
    		 };
    		 
    		 while (twi_master_write(&TWIE, &packet_write) != TWI_SUCCESS);
    		delay_ms(10);
    		
    		//request register
    		twi_package_t packet_read = {
    			.chip         = MPU6050_ADDR,      // TWI slave bus address
    			.buffer       = data_received,        // transfer data destination buffer
    			.length       = 1                    // transfer data size (bytes)
    		};
    		
    		// Perform a multi-byte read access then check the result.
    		if(twi_master_read(&TWIE, &packet_read) == TWI_SUCCESS){
    			usart_serial_write_packet(USART_DEBUG, "TWI-Read OK\n", strlen("TWI-Read OK\n"));
    		}	
    }
    Nach diesem Beispiel:
    http://asf.atmel.com/docs/3.3.0/xmeg...uickstart.html

    Wenn ich so nun das WHO_AM_I-Register-Auslese

    Code:
    	while(1)
    	{
    		mpu6050_readByte(MPU6050_RA_WHO_AM_I);
    		test = data_received[0];
    		
    		char itmp[10];
    		itoa(test, itmp, 10);
    		usart_serial_write_packet(USART_DEBUG, itmp, strlen(itmp));
    		usart_serial_putchar(USART_DEBUG, '\n');}
    Bekomme ich eine 205 (0xCD) und nicht 104 (0x68 ) als Antwort.

    Für GYRO_XOUT_L/H, ACCEL_XOUT_L/H und TEMP_OUT_L/H bekomme ich immer 255 zurück.

    Ich habe am MPU6050 noch keine Initialisierung durchgeführt. So wie ich das sehe, ist es auch nicht unbedingt notwendig.

    Hab ihr mir eventuell hierzu ein paar tpps? Eventuell eine andere TWI-Lib, oder muss ich doch bestimmte Initialisierungen machen?
    Vielen Dank!

Ähnliche Themen

  1. Willas Shrediquette Tricopter / Quadrocopter / Hexacopter
    Von Willa im Forum Vorstellungen+Bilder von fertigen Projekten/Bots
    Antworten: 3541
    Letzter Beitrag: 03.08.2014, 19:27
  2. Gyroskop und GPS für Hexacopter
    Von Murmele im Forum Sensoren / Sensorik
    Antworten: 10
    Letzter Beitrag: 22.07.2012, 21:04

Stichworte

Berechtigungen

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

LiFePO4 Speicher Test