Benutzer:Hansinator: Unterschied zwischen den Versionen

Aus LaborWiki
Wechseln zu: Navigation, Suche
(added link to Beej's Guide to Network Programming)
 
(11 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://taz.de/!77472/ Die Welt der Pirahã-Indianer: Ein Leben ohne Angst und Sorgen]
* [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]
* [http://tryhaskell.org/ Try Haskell in your browser! An interactive tutorial for the Haskell programming language]
* [http://tryhaskell.org/ Try Haskell in your browser! An interactive tutorial for the Haskell programming language]
* [http://www.joelonsoftware.com/articles/Unicode.html What every programmer should know about Unicode]
* [http://www.joelonsoftware.com/articles/Unicode.html What every programmer should know about Unicode]
 
* '''[http://c-faq.com/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://beej.us/guide/bgnet/ Beej's Guide to Network Programming]
* 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://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://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://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> ==
Zeile 184: Zeile 198:
  Hansi        BAY 93                        Diode                      0,05        5        0,25 €
  Hansi        BAY 93                        Diode                      0,05        5        0,25 €
</pre>
</pre>
1µH, 10µH, 50µH, 470µH, 10mH
</div>
</div>

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]

Brainstorming[Bearbeiten | Quelltext bearbeiten]


Mein(e) Robo(s)[Bearbeiten | Quelltext bearbeiten]

Hansis Roboter

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.

Tafel


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