Benutzer:Hansinator: Unterschied zwischen den Versionen
Aus LaborWiki
Keine Bearbeitungszusammenfassung |
(added link to Beej's Guide to Network Programming) |
||
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 21: | Zeile 21: | ||
* [http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html A Whirlwind Tutorial on Creating Really Teensy ELF Executables for Linux] | * [http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html A Whirlwind Tutorial on Creating Really Teensy ELF Executables for Linux] | ||
* [http://stackoverflow.com/questions/3437404/min-and-max-in-c MIN and MAX in C] | * [http://stackoverflow.com/questions/3437404/min-and-max-in-c MIN and MAX in C] | ||
* [http://graphics.stanford.edu/~seander/bithacks.html Bit Twiddling Hacks] | * [http://graphics.stanford.edu/~seander/bithacks.html Bit Twiddling Hacks] | ||
* [http://www.gnu.org/licenses/license-list.html Various Licenses and Comments about Them] | * [http://www.gnu.org/licenses/license-list.html Various Licenses and Comments about Them] | ||
Zeile 28: | Zeile 27: | ||
* '''[http://c-faq.com/index.html C-FAQ]''' | * '''[http://c-faq.com/index.html C-FAQ]''' | ||
* '''[http://www.parashift.com/c++-faq-lite/index.html C++-FAQ]''' | * '''[http://www.parashift.com/c++-faq-lite/index.html C++-FAQ]''' | ||
* [http://floating-point-gui.de/ What Every Programmer Should Know About Floating-Point Arithmetic] | |||
* [http://www.sensorsportal.com/HTML/Sensor.htm Comprehensive List of Sensors and Manufacturers] | * [http://www.sensorsportal.com/HTML/Sensor.htm Comprehensive List of Sensors and Manufacturers] | ||
* [http:// | * [http://beej.us/guide/bgnet/ Beej's Guide to Network Programming] | ||
* Useful hints about select, pselect, poll, ppoll & epoll | * Useful hints about select, pselect, poll, ppoll & epoll | ||
** [http://www.unixguide.net/network/socketfaq/2.14.shtml Whats the difference between select() and poll()?] | ** [http://www.unixguide.net/network/socketfaq/2.14.shtml Whats the difference between select() and poll()?] | ||
** [http://stackoverflow.com/questions/970979/what-are-the-differences-between-poll-and-select What are the differences between poll and select?] | ** [http://stackoverflow.com/questions/970979/what-are-the-differences-between-poll-and-select What are the differences between poll and select?] | ||
** [http://stackoverflow.com/questions/9774986/linux-select-vs-ppoll-vs-pselect Linux select() vs ppoll() vs pselect() and race conditions] | ** [http://stackoverflow.com/questions/9774986/linux-select-vs-ppoll-vs-pselect Linux select() vs ppoll() vs pselect() and race conditions] | ||
** [http://lwn.net/Articles/176911/ The new pselect() system call] | |||
** [http://stackoverflow.com/questions/2032598/caveats-of-select-poll-vs-epoll-reactors-in-twisted Caveats of select/poll vs. epoll reactors in Twisted] | ** [http://stackoverflow.com/questions/2032598/caveats-of-select-poll-vs-epoll-reactors-in-twisted Caveats of select/poll vs. epoll reactors in Twisted] | ||
** [http://lse.sourceforge.net/epoll/index.html epoll Scalability Web Page] | |||
* [http://lse.sourceforge.net/ Linux Scalability Effort Homepage] | |||
* [http://taz.de/!77472/ Die Welt der Pirahã-Indianer: Ein Leben ohne Angst und Sorgen] | |||
* [http://bullschiet.de/temp/help.html Kleine Hilfestellung für den Heizungs-Nichtfachmann] | |||
* [http://sleepyti.me/ sleepyti.me bedtime calculator] | |||
== <span style="color:#00E000">Brainstorming</span> == | == <span style="color:#00E000">Brainstorming</span> == |
Aktuelle Version vom 16. März 2013, 03:07 Uhr
Hallo und willkommen auf meiner Seite!!!1!1!11
Was ich so mache[Bearbeiten | Quelltext bearbeiten]
- Ich bastele gelegentlich an Robotern, siehe unten
- Ich programmiere manchmal Animationen für die Borgs
- Alle farbigen Borgs haben Plasmaeffekte von mir :-)
- Ich habe an der rfm12lib, dem rfm12usb und dem rfm12 Bootloader mitgebastelt..
ausserdem benutze ich rfm12s in meinen Projekten - Ich bringe Design in das Wiki!
- Ich habe schon mal ein Kind gelötet...
- Manchmal helfe ich bei der Labortage Orga
- Ich pflege die Sourcecodes des CAN-Gateway und des Cand
- Ich habe eine experimentelle Steuerung für die Lernroboterarme im Labor gebaut..
.. aber nirgends dokumentiert, keinen source hochgeladen und die Platine mit handschriftlichem Schaltplan zuhause.. shame on me ^^ - .. äh, das gleiche gillt für einen Tschibo Staubsaugerroboter... damnit, I see a pattern here...
Spannende Links[Bearbeiten | Quelltext bearbeiten]
- Why Free Software usability tends to suck
- Top 25 Most Dangerous Programming Errors
- Java: how not to make a mess of stream handling
- A Whirlwind Tutorial on Creating Really Teensy ELF Executables for Linux
- MIN and MAX in C
- Bit Twiddling Hacks
- Various Licenses and Comments about Them
- Try Haskell in your browser! An interactive tutorial for the Haskell programming language
- What every programmer should know about Unicode
- C-FAQ
- C++-FAQ
- What Every Programmer Should Know About Floating-Point Arithmetic
- Comprehensive List of Sensors and Manufacturers
- Beej's Guide to Network Programming
- Useful hints about select, pselect, poll, ppoll & epoll
- Linux Scalability Effort Homepage
- Die Welt der Pirahã-Indianer: Ein Leben ohne Angst und Sorgen
- Kleine Hilfestellung für den Heizungs-Nichtfachmann
- sleepyti.me bedtime calculator
Brainstorming[Bearbeiten | Quelltext bearbeiten]
- HAP Version 0
Ein Protokoll zur Hausautomatisierung - LCAP
Labor CAN Automation Protocol - Projektseite neu bauen
Mein(e) Robo(s)[Bearbeiten | Quelltext bearbeiten]
Rechts sieht man mein aktuelles Roboterprojekt, den Shr0dBot.
Vielen Dank an Mati für das Foto!
Kunst im Lab[Bearbeiten | Quelltext bearbeiten]
Das habe ich mal gemalt, als ich die bunte Kreide fand.
VacuBot[Bearbeiten | Quelltext bearbeiten]
==== MOTORCTRL ATMEGA8 PIN CONFIGURATION ==== Names in () are or were planned. Pins marked with [in] are inputs, whilst the ones marked with [out] are outputs. All other pins make use of their respective special function(s). ** GENERIC XTAL1,2 - 16MHZ, no capacitors VCC, AVCC - +5V, 100nF GND - COMMON GROUND ** PORT B 0 - VACCUUM CLEANER DRIVE ON/OFF [out] 1 - PWM MOTOR 1 [OC1A] 2 - ISP [SPI SS], PWM MOTOR 2 [OC1B] 3 - ISP [SPI MOSI], WHEEL/MOTOR 1 LIFTOFF DETECTOR [in, int. pullup] 4 - ISP [SPI MISO], WHEEL/MOTOR 2 LIFTOFF DETECTOR [in, int. pullup] 5 - ISP [SPI SCK], FRONT LIFTOFF DETECTOR [in, int. pullup] 6 - XTAL1 7 - XTAL2 ** PORT C 0 - BATTERY POWER DIVIDER (1nF load) [ADC0] 1 - MOTOR 1 CURRENT MEASUREMENT (capacitive load?) [ADC1] 2 - MOTOR 2 CURRENT MEASUREMENT (capacitive load?) [ADC2] 3 - ACCU LOADER ON/OFF [out] 4 - TWI SLAVE [SDA] 5 - TWI SLAVE [SCL] 6 - RESET ** PORT D 0 - MOTOR 2 FORWARD [out] 1 - MOTOR 2 REVERSE [out] 2 - ENCODER A [in] 3 - ENCODER B [in] 4 - MOTOR 1 FORWARD [out] 5 - MOTOR 1 REVERSE [out] 6 - BRUSH DRIVE 1 ON/OFF [out] 7 - BRUSH DRIVE 2 ON/OFF [out] ** FREE PD6, PD7 ==== MOTORCTRL MISC STUFF ==== * Encoder IR-Diodes 1k ?? (re-evaluate) * How to connect phototransistors? I can remeber they had 1k resistors on em. (See on orig. board) * Use 1/8th Voltage divider (14.4 / 8 = 1.6V -> 12 cells * 1.5V max = 18V -> 18/8 = 2,25V) * Use logic level fets for vacuum and brush motor turnon/off * Reverse engineer loader circuit, reuse relais if it could cut loader power * Use L6202 motor driver ICs * Motor current: ** Blocked motor draws max. ~800mA ** Normal operation ~350mA ** 0.1 ohm current sense resistors ** Max ~80mV sense voltage ** ~35mV in normal operation ** 25 times amplification to use with adc @ 2.56V internal reference ** Use lm358 opamp * What do the two diodes @ current sense / gnd do? * atmega input with pullup -> encoder phototransistors -> 4,7k -> gnd They used: * L289 for motor control * 14.4V motor power * LM2565T switching power supply for logic * IR-led + phototransistor for encoders ** 14.4V+1K for leds ** ~2.3V / 11mA for leds ** Try 220ohm @ 5V (should be around 12-13mA) ** Phototransistors are pulled up by 10k or something (one has 10k, one has something else) ==== MAINBOARD SPECS ==== * Use the fat 128k flash / 16k ram 40pin DIP Atmega * Probably use a switched power supply -> ask peter for that chip * Think of creative use for the big fat atmel * Use rfm12
Hansinator's MotorCTRL Board[Bearbeiten | Quelltext bearbeiten]
- Both L6202 are correctly connected to motor and atmega
- Need a solution for current sensing
svn notizen[Bearbeiten | Quelltext bearbeiten]
someday this needs to be patched to use crc and stuff, as in trunk ./src-atmel/automatization2.0/cand/branch/usb_support/ ask sören about branch -> delete ./src-host/src/cand-ucspi_tcp/config.h:8:#define UART_HOST ask peter which source is for moodbar (src-atmel/theke or src-atmel/moodbar) -> one is crap, the other doesn't work... ask peter about ruby lapd
bash the sources[Bearbeiten | Quelltext bearbeiten]
# grep for stuff grep -Hirn UART_HOST . | grep config | grep -v svn > uarthost.txt # print all files in uarthost.txt (grep output) for i in $( gawk -F : '{ print $1 }' uarthost.txt ); do echo $i; done # remove all occurences of uart host define in files for i in $( gawk -F : '{ print $1 }' uarthost.txt ); do sed -e '/#define UART_HOST/d' < $i > $i.new; done for i in $( gawk -F : '{ print $1 }' uarthost.txt ); do mv $i.new $i; done # revert files... for i in $( gawk -F : '{ print $1 }' uarthost.txt ); do svn revert $i; done
reichelt temp[Bearbeiten | Quelltext bearbeiten]
Name Bestellnummer Bauteil E-Preis Anzahl G-Preis ---------------------------------------------------------------------------------------------------- Hansi LM 75 SMD Sensor 1.45€ 4 5.80 € Hansi SHS A5 Sensor 7,30€ 1 7,30 € Hansi TSIC 206 TO92 Sensor 4,20€ 1 4,20 € Hansi A 906013 Widerstand 0,95€ 4 3,80 € Hansi BA 282 Diode 0,06 5 0,29 € Hansi BAX 16 Diode 0,05 5 0,25 € Hansi BAY 93 Diode 0,05 5 0,25 €
1µH, 10µH, 50µH, 470µH, 10mH