hallo leute,
da ich trotz längerem durchsuchens des forums keine passende antwort auf
meine frage gefunden habe, brauch ich jetzt direkt von euch hilfe.
und zwar werde ich demnächst mit einem attiny24V einen intelligenten
hundeball bauen. da ich das ganze in einem tennisball verbauen möchte
und da nur begrenzter platz vorhanden ist würde ich gerne auf den reset
taster verzichten.
d.h. ich möchte im ball lediglich einen schalter zum einschalten der
spannungsversorgung einbauen und immer beim einschalten des schalters
direkt das programm starten.
wie muss ich genau dabei vorgehen?
scheint ja ziemlich viele möglichkeiten beim thema reset geben. aber
welche ist für mich als relativen anfänger in diesem fall die
einfachste?
mfg
andi schrieb:> und zwar werde ich demnächst mit einem attiny24V einen intelligenten> hundeball bauen. da ich das ganze in einem tennisball verbauen möchte> und da nur begrenzter platz vorhanden ist würde ich gerne auf den reset> taster verzichten.
heißt das jetzt, dass du den Reset-Pin für was anderes brauchst, oder
was willst du damit sagen?
> d.h. ich möchte im ball lediglich einen schalter zum einschalten der> spannungsversorgung einbauen und immer beim einschalten des schalters> direkt das programm starten.
???
was meinst du, macht der µC sonst nach dem Einschalten?
Edit:
was genau macht eigentlich ein "intelligenter Hundeball"?
Einen Reset-Taster benötigst Du auch gar nicht. Einen "power-on-Reset"
kann man recht einfach mit einem RC-Glied am Reset-Eingang des
Controllers erzeugen, wenn man Anspruch auf Perfektion legt, kann man
auch spezielle Reset-Generator-ICs verwenden.
In einem Tennisball ist doch massig Platz, was soll denn da noch alles
rein? GPS, UMTS, zwei Motoren zum selbstständigen Rollen, ...? ;-)
Schau doch mal ins AVR-Tutorial, da ist gleich im ersten Kapitel der
Schaltplan mit der Resetbeschaltung: 10k nach +5V und 47nF nach GND
obwohl die beiden Werte nicht allzu kritisch sind.
hdd schrieb:> In einem Tennisball ist doch massig Platz, was soll denn da noch alles> rein? GPS, UMTS, zwei Motoren zum selbstständigen Rollen, ...? ;-)>> Schau doch mal ins AVR-Tutorial, da ist gleich im ersten Kapitel der> Schaltplan mit der Resetbeschaltung: 10k nach +5V und 47nF nach GND> obwohl die beiden Werte nicht allzu kritisch sind.
Wobei noch nicht mal das sein müsste.
Wenn der µC in der Schaltung nicht mehr umprogrammiert werden muss, kann
man Reset auch einfach an Vcc hängen. In den Fuses kann man ohnehin noch
Einstellen, wie lang der AVR nach anlegen der Spannung warten soll, ehe
es losgeht.
Vlad Tepesch schrieb:> Edit:> was genau macht eigentlich ein "intelligenter Hundeball"?
Na ein Ball der sich von selbst bewegt, so dass der Hund alleine mit ihm
spielen kann und Herrchen derweil gemütlich auf dem Sofa sitzt und
Zeitung liest :)
Wobei ich es mir als nicht gerade trivial vorstelle, eine Kugel von
innen heraus in Bewegung zu versetzen. Falls außen am Ball dann doch
Räder für den Antrieb dran sind, dann wäre es ja eher eine angetrieben
Spielzeugmaus und kein Ball.
Rufus t. Firefly schrieb:> recht einfach mit einem RC-Glied am Reset-Eingang des> Controllers erzeugenKarl heinz Buchegger schrieb:> Wobei noch nicht mal das sein müsste.> Wenn der µC in der Schaltung nicht mehr umprogrammiert werden muss, kann> man Reset auch einfach an Vcc hängen. In den Fuses kann man ohnehin noch> Einstellen, wie lang der AVR nach anlegen der Spannung warten soll, ehe> es losgeht.
Ich dachte schon ich hab bisher immer was falsch gemacht, wenn ich nur
einen Pullup an den Resetpin hänge.
Mark Brandis schrieb:> Na ein Ball der sich von selbst bewegt, so dass der Hund alleine mit ihm> spielen kann und Herrchen derweil gemütlich auf dem Sofa sitzt und> Zeitung liest :)
Ich seh schon, die Messlatte für Intelligenz hängt mit der weile ganz
schön niedrig ;)
Mark Brandis schrieb:> Vlad Tepesch schrieb:>> Edit:>> was genau macht eigentlich ein "intelligenter Hundeball"?>> Na ein Ball der sich von selbst bewegt, so dass der Hund alleine mit ihm> spielen kann und Herrchen derweil gemütlich auf dem Sofa sitzt und> Zeitung liest :)
Klarer Fall für ein iStöckchen :-)
Bau lieber eine iCat die vor dem Hund flieht.
PIR Sensoren um den Hund zu erkennen und IR & US Sensoren für die
Umgebung....und ab gehts. Miiiaaauuu kopfschüttel
Warum nicht gleich einen künstlichen Hund, wenn man sich je nicht mit
ihm beschäftigen will??Nen Foto tuts auch ;-)
hätte gar nicht gedacht, dass ich mit diesem beitrag derart auf resonanz
stoße. hier eine kurze beschreibung was ein intelligenter hundeball ist:
in den ball soll ein attiny24V, welcher über ein schieberegister 8 LEDs
ansteuert, welche später als lauflicht in zwei richtungen rund um den
ball aufleuchten sollen, so dass es für einen hund halt interessant ist.
später will ich in den ball noch einen beschleunigungssensor einbauen
und dann die proportional zur beschleunigung die leds in
unterschiedlicher helligkeit leuchten lassen.
ich weiß ja nicht ob von euch jemand schon einmal einen tennisball
aufgesägt hat aber von viel platz kann da nicht die rede sein. man muss
ja auch bedenken, dass schon allein die spannungsversorgung mit 2
mignonbatterien platz wegnimmt.
außerdem werde ich die leds und den ein-schalter in gebohrte löcher im
ball stecken und deren anschlüsse benötigen ja auch noch ein wenig
platz. der platz reicht schon aber ich muss schon schauen, dass ich auf
jedes nicht unbedingt benötigte bauteil verzichten muss.
meine beschreibung im ersten post müsste ja eigentlich schon eindeutig
gewesen sein. ich möchte aus platzgründen auf einen reset taster
verzichten und den resetpin deshalb offen lassen (I/O pins hab ich
genug).
das programm soll also direkt nach dem einschalten der
spannungsversorgung mit dem ein- schalter gestartet werden.
von euch würde ich jetzt gern wissen, welche besondere einstellungen
(z.b. fuse- bits) ich machen muss, damit das ganze wie hierbeschrieben
funktioniert.
ich hoffe die beschreibung war jetzt verständlich.
mfg andi
andi schrieb:> meine beschreibung im ersten post müsste ja eigentlich schon eindeutig> gewesen sein. ich möchte aus platzgründen auf einen reset taster> verzichten und den resetpin deshalb offen lassen (I/O pins hab ich> genug).
Offen lassen ist ganz schlecht.
> das programm soll also direkt nach dem einschalten der> spannungsversorgung mit dem ein- schalter gestartet werden.
Ich würde mir auch noch überlegen, ob ich einen derartigen Schalter
überhaupt brauche.
> von euch würde ich jetzt gern wissen, welche besondere einstellungen> (z.b. fuse- bits) ich machen muss, damit das ganze wie hierbeschrieben> funktioniert.
Gar keine.
Das macht der µC schon von alleine.
Was soll er auch sonst tun ausser beim Anlegen der Versorungsspannung
mit dem Programm los zu legen
AVR-TutorialAVR-GCC-Tutorial
Vor allem ersteres geht ein wenig genauer auf die Hardware ein.
andi schrieb:> welche später als lauflicht in zwei richtungen rund um den> ball aufleuchten sollen, so dass es für einen hund halt interessant ist.
Hunde interessieren sich im Allgemeinen nicht für Licht oder
Lichteffekte.
> d.h. ich möchte im ball lediglich einen schalter zum einschalten der> spannungsversorgung einbauen und immer beim einschalten des schalters> direkt das programm starten.
....
> von euch würde ich jetzt gern wissen, welche besondere einstellungen> (z.b. fuse- bits) ich machen muss, damit das ganze wie hierbeschrieben> funktioniert.
Salamitaktik ?
> ....für mich als relativen anfänger
Wenn du dich da mal nicht überschätzt.
ob der hund auf lichteffekte reagiert oder nicht, dass überlasst ihr mal
schön mir. es gibt ja auch sonst noch einige mittel(z.b. einen
piezosummer), um den ball für den hund interessant zu machen.
ja stimmt, den reset pin offen lassen war wohl eher ein schlechter
vorschlag, nicht dass er sich elektromagnetische streufelder einfängt.
aber wenn ich den reset pin an Vcc hänge, müsste es ja dann
funktionieren, oder?
Muss ich sonst wirklich nichts an den fuse- bits verändern?
bisher war ich es nämlich immer gewohnt, dass der controller das
programm erst startet, wenn man den taster am reset drückt.
danke schon mal im voraus an diejenigen, denen etwas an einer
ernsthaften antwort liegt.
update:
ach ja, den ein- schalter brauche ich, weil die batterien lange halten
sollen und der ball relativ selten (eigentlich nur nachts) verwendet
werden soll. außerdem würde mir sonst nichts einfallen, wie ich den
controller ein- bzw. und ausschalten sollte, da die einschaltzeiten
unterschiedlich lang sein werden.
andi schrieb:> ach ja, den ein- schalter brauche ich, weil die batterien lange halten> sollen und der ball relativ selten (eigentlich nur nachts) verwendet> werden soll.
Das kann man aber auch so lösen, dass sich der µC schlafen legt, wenn
der Beschslunigungssensor 3 Minuten lang Ruhe meldet. Dann alle paar
Sekunden aufwachen lassen und wieder den Sonsor befragen ob sich was
bewegt.
Auf die Art sind deine Akkus durch selbstentladung schneller leer als
sie der schlafende µC leerlutschen kann.
Aber:
Du klingst mir so, als ob du erst mal deinen Ball beiseite legen
solltest, das Tutorial durcharbeiten, deinen ersten µC erst mal so auf
einem Steckbrett zum laufen bringen solltest. Kurz und gut: Erst mal die
Materie studieren und lernen, ehe es dann ans eigentliche Projekt geht.
Christian D. schrieb:> Hast du da keine Angst dass der Hund den Ball zerbeisst?> Ein Tennisball ist ja eher weich. Nachher verschluckt er noch die> Bauteile.
Bei den meißten Hunden die nicht in die Kategorie Ratte fallen, hält so
ein Tennisball im eifer des Gefechtes keine 5 Minuten bis er zerfällt
bzw. so durchlöchert ist, dass alles was sich darin befinde absolut
unbrauchbar ist.
Außerdem würde ich keinem raten den Spieltrieb des Hundes in der Wohnung
freien Lauf zu lassen.
Dass schadet dem Inventar erheblich.
nd draußen gibt es selten Sofas.
Und wer den Hund draußen unbeaufsichtigt spielen lassen will, ist
einfach nur unverantwortlich.
Was spricht denn dagegen die Kinder (eigene oder die vom Nachbarn) mit
dem Hund spielen zu lassen?
ich verstehe echt nicht, warum mich hier niemand verstehen will.
es ist ja nicht so, dass ich es nicht auf die reihe bringe das tutorial
bzw. fachbücher nach meinem anliegen zu durchforsten.
all das habe ich mittlerweile ausgiebig gemacht. ich habe ja auch schon
längere zeit mikrocontroller programmiert.
allerdings war es damals auf einer art lernroboter (RP6), auf welchem
bereits alles "programmierfertig" war. in dieser zeit habe ich eine
vielzahl unterschiedlicher hardware (ir- leds, servomotoren,
schrittmotoren...) angeschlossen und sie programmiert.
nur war es beim RP6 halt so, dass alles was zum programmieren nötig ist
, bereits vorhanden ist und ich mich damit nie beschäftigen musste. zum
einstieg war der RP6 schon richtig gut, nur jetzt möchte ich halt mal
einen "kauffrischen" µc von grund auf selber programmieren.
was ich jetzt eigentlich von euch wissen wollte war, wie der µC "weiß",
ob er mit einem reset- taster das programm starten muss oder ob er beim
einschalten der spannungsversorgung den reset ausführen muss und das
programm starten muss? das dürfte ja wahrscheinlich über das setzen
unterschiedlicher fuse- bits erfolgen, oder?
beim RP6 ist es ja so, dass man zuerst mit einem schalter die
spannungsversorgung einschaltet und erst beim drücken des reset tasters
das programm gestartet wird.
wenn ich jetzt bei meinem ersten projekt das progamm beim einschalten
der spannungsversorgung starten möchte, muss ich ja wahrscheinlich ein
anderes fuse- bit setzen als beim RP6, oder?
genau auf diese frage habe ich in fachbüchern und im tutorial keine
antwort gefunden. die einzelnen fusebits sind zwar gut erklärt, nur habe
ich momentan noch probleme mit ihrer genauen verwendung.
deshalb auch der thread hier im forum.
danke schon mal im voraus für eure hilfe
andi schrieb:> was ich jetzt eigentlich von euch wissen wollte war, wie der µC "weiß",> ob er mit einem reset- taster das programm starten muss
Und wir verstehen echt nicht, was daran so schwer ist, dass ein µC beim
Anlegen der Versorgungsspannung mit seiner Arbeit loslegt.
Überleg doch mal. µC werden in hundertausend Geräten eingebaut. Wenn in
einer Fabrik nach einem Stromausfall der Hausmeister durchgehen müsste
und die vielen tausend µC mit einem Druck aufs Knöpfchen wieder starten
müsste, dann würde er bis zum nächsten Stromausfall nicht fertig werden.
> programm starten muss? das dürfte ja wahrscheinlich über das setzen> unterschiedlicher fuse- bits erfolgen, oder?
NEIN.
Lies es von meinen Lippen, äh Tastendrücken ab:
Du legen Spannung an - µC arbeitet sein Programm ab.
Das wurde in diesem Thread doch jetzt schon wirklich oft genug
geschrieben.
> spannungsversorgung einschaltet und erst beim drücken des reset tasters> das programm gestartet wird.
Ich kann zwar bewussten Robot nicht, ich glaub dir auch dass du da einen
Taster hast, der vielleicht sogar mit "Reset" beschriftet ist. Ich
bezweifle aber, dass dieser Taster tatsächlich physikalisch irgendetwas
mit dem Reset Pin des µC zu tun hat.
Die Umkehrung ist nämlich ganz einfach zu realisieren. Nichts einfacher
als das, als in den ersten paar Programmbefehlen eine Schleife
einzubauen, die solange wartet, bis der Benutzer eine Taste drückt. Auch
dort arbeitet der µC bereits nach dem Einschalten. Aber er wartet eben,
entsprechend seiner Programmierung, auf einen Tastendruck.
>ja stimmt, den reset pin offen lassen war wohl eher ein schlechter>vorschlag, nicht dass er sich elektromagnetische streufelder einfängt.
Die Reset Eingänge der AVR haben eigentlich alle einen eingebauten
Pull-Up, deshalb kann man bei denen eigentlich immer den reset pin
einfach offen lassen!
Streufelder sind deshalb normalerweise kein Problem. Nur wenn an dem Pin
noch eine wirklich sehr lange offene Leitung angeschlossen ist, etwa für
einen ISP-Programmer) könnte es auch bei normalen Umgebungsbedingungen
ein Problem geben.
Wenn die Spannung am Kontroller anliegt und der Reset-Pin (falls aktiv)
auf high liegt, startet das Programm.
Wenn du dir eine Starttaste programmierst, ist es das gleiche. Das
Programm startet, läuft bis zur Tastenabfrage, wartet dort und läuft
nach Tastendruck weiter.
Beim RP6 geht die Starttaste auf PB5, hat daher nichts mit Reset zu tun.
Zumindest sehe ich das in der Schaltung so.
Das ist der Grund warum nirgends expliziet steht (bin mir allerdings
nicht sicher) das der Programmablauf automatisch beginnt.
Noch als Nachtrag:
"andy" ist ein typisches Beispiel dafür, das man mit den sogenannten
Lernroboter und dergleichen nichts lernt wenn man nur die vorgegebenen
Programmteile zusammenstöpselt.
Der einzige der wirklich was kann ist derjenige der diese Programmteile
erstellt.
Ich finde es aber äusserst positiv das sich "andy" bemüht sich auch
ausserhalb vorgegebener Programme zu bewegen.
Gleich mit so einem Projekt zu beginnen halte ich aber für übertrieben.
Klein beginnen mit Led blinken lassen und Tastenabfragen und dann
erweitern ist sicher der bessere Weg.
Hubert
Hallo andi (Gast)
zum RP6:
Der Taster, den du fälschlicherweise als Reset-Taster bezeichnest, ist
ein Start/Stop-Taster.Dieser wird vom Bootloader des RP6 überwacht und
startet bzw. stoppt die Programme, die man per USB-Interface aufspielt.
Schau dir auch dazu mal die Schaltpläne zu dem RP6 an:
http://arexx.com/rp6/downloads/RP6_Schematics.zip
Man kann ihn nämlich auch über ISP programmieren. (Achtung: Dabei wird
der Bootloader gelöscht!)
@andi
Der Einwand kam schon mal. Die Hunde die ich kenne (das sind solche, auf
die man nicht aus Versehen tritt und die nicht in der Handtasche
getragen werden) brauchen genau 2 - 10 Sekunden um aus der Elektronik im
Ball (der ja schön weich ist, weil aufgesägt, gelocht etc.) einen Haufen
Platinenbrösel zu machen.
Ich will Dir ja nicht den Spass verderben aber wie willst Du Deine
Elektronik davor schützen?
StinkyWinky schrieb:> Tennisbälle schaden den Zähnen des Hundes. Daher nicht mal als "dummer"> Hundeball zu empfehlen.
in wiefern schadet es den Zähnen...
meiner kaut schon seit über 7 Jahren auf diversen Tennisbällen rum, und
der Doc meint, er habe super Zähne...
@ TE
meinst Du nicht, das ein Tennisball zu weich ist??? Mein Wuff zerstört
die Bälle immer nach kurzer Zeit...
Björn C. schrieb:> meiner kaut schon seit über 7 Jahren auf diversen Tennisbällen rum, und> der Doc meint, er habe super Zähne...
Das mag sicherlich stimmen aber dein Hund kaut ja auch nicht auf jeder
Menge LEDs, Kupfer, Batterien und Platinen rum.
Ich sehe die Problematik eher darin wie man die LEDs und alles was nach
aussen schaut befestigt, so dass sich der Hund daran nicht verletzen
kann. Ich seh schon LED-Anschlussdrähte im Zahnfleisch es Hundes...
Vorallem wie soll das gelöst werden mit den LEDs. Ein Loch bohren LED
durch und dann? Da beißt der Hund einmal rein und die LED ligt im
Tennisball. Beim Zweiten mal beißt der Hund dann in die Elektronik.
nun andi: Mit Verlaub gesagt hast du von Microcontrollern keinen blassen
Schimmer. Arbeite dich also bitte durch die Tutorials und stelle danach
deine Fragen. Du wirst bemerken, dass sich viele Sachen erledigt haben.
Weißt du, du musst das selber machen - wir sind hier nicht da um
Projekte zu entwickeln sondern um gezielt Hilfestellung bei speziellen
Problemen zu geben. Nachdem dir die Grundlage fehlt können wir dir nur
schwer helfen - das können wir erst dann wieder wenn du die Grundlagen
beherrschst.
Du musst lernen, dass man bei Microcontroller Hard- und Software nicht
getrennt voneinander entwickeln kann. Darum musst du die Tutorials
machen. Ich möchte dir auch nicht verschweigen, dass das
verhältnissmäßig aufwändig ist und viel Zeit in Anspruch nehmen wird.
Das große Plus ist allerdings, dass du hinterher die Grundzüge der
Microcontroller-Projekt-Entwicklung verstanden hast.
Viel Erfolg
andi schrieb:> ob der hund auf lichteffekte reagiert oder nicht, dass überlasst ihr> mal schön mir.
Das wird man eher dem Hund überlassen müssen.
Lehrmann Michael schrieb:> Ich sehe die Problematik eher darin wie man die LEDs und alles was nach> aussen schaut befestigt, so dass sich der Hund daran nicht verletzen> kann. Ich seh schon LED-Anschlussdrähte im Zahnfleisch es Hundes...
Na immer noch besser als der Inhalt zerbissener Batterien.
An Deiner Stelle würde ich auch erstmal einen Tennisball aufschneiden,
einen Kieselstein oder was ähnliches hineinbauen und ihn dann wieder zu
machen. Dann würde ich den Ball dem Hund geben und schauen, wie lange
der braucht, ihn zu zerlegen und ob der Hund überhaupt noch an dem Ball
interessiert ist. Ich würde nämlich vermuten, dass er nicht mehr so gut
springt (... also der Ball - nicht der Hund).
Das Video zur Hundeballschleuder weiter oben ist klasse. Aber selbst da
schreibt ja der Erbauer, dass sein Hund damit nur 3 mal gespielt hat.
Ich glaube, was den Thread Ersteller so verwirrt ist, dass er
anscheinend bisher immer den Resetschalter drücken musste bevor sein
Programm loslief, vielleicht könnt Ihr im den Effekt erklären.
Gruß
Tom
Thomas Burkhart schrieb:> Ich glaube, was den Thread Ersteller so verwirrt ist, dass er> anscheinend bisher immer den Resetschalter drücken musste bevor sein> Programm loslief, vielleicht könnt Ihr im den Effekt erklären.
Haben wir doch schon lange.
Sein bisheriger "Reset"-Schalter ist keiner.