-
Gesamte Inhalte
288 -
Benutzer seit
-
Letzter Besuch
Posts erstellt von The_Real_Black
-
-
Mal ein "anderer" Ansatz (durch code sieht und lernt man es am besten):
- Code ist verschoben
- und getestet (klappt mit meiner UID // ist bereits auf deine UID geändert.)
- sonst siehe oben.
- ich habe mich mal auf den Poti beschränkt.
- auf der Form ist ein label welches dir die Position des Potis anzeigt.
Edit: Ich erwarte, dass der Brick bereits angeschlossen ist (keine Fehlerprüfungen oder so) da es nur ein Beispiel ist.
-
Poste mal allen Code der wichtig sein kann. Dann kann man helfen oder du postest das Projekt als zip, dann kann man einen Blick draufwerfen und ausbessern.
-
Für den Jammer Thread: Ich baue einen Roboter und muss mit einer USB Verlängerung arbeiten...
-
Ich vermute mal du hast bereits einen Code wie:
ipcon = new IPConnection(host, port);temp = new BrickletTemperature(t.Uid);
temp.SetTemperatureCallbackPeriod(1000);
temp.RegisterCallback(new BrickletTemperature.Temperature(TempCB));
...
void TempCB(short val)
{
labelxyz.text = val.ToString();
}
Problem ist klar da es Multi-Threaded ist kann man nicht auf das Label zugreifen.
Stichwort ist INVOKE!
temp.RegisterCallback(new BrickletTemperature.Temperature(TempCB));
SetValues = new SetPosDel(InvokeSetter);
...
private delegate void SetPosDel(double val);
private SetPosDel SetValues;
void TempCB(short val)
{
try
{
object[] p = { (val / 100.0) };
this.Invoke(SetValues, p);
}
catch
{
}
}
private void InvokeSetter(double val)
{
DateTime now = DateTime.Now;
txt_log.Text = "Temperatur um "
+ now.ToString("yyyy-MM-dd HH:mm:ss:ff")
+": " + val.ToString("0#.##") + "°C" + Environment.NewLine
+ txt_log.Text;
txt_ExcelLog.Text += now.ToString("HH:mm:ss") + "\t" + val + Environment.NewLine;
}
-
FlyingDoc: Soweit ich es getestet habe ist das bei meinen Brick (ohne Umrechnungen) mit dem USB Stecker Richtung Süden mit den Leds nach unten...
-
müsste ich mir angucken. Bei der IO4 geht das bestimmt, für die IO16 bräuchte ich vermutlich mehr counter als ich platz auf dem Plugin hab .
Es müssen ja nicht beide Ports sein einer würde genügen ^^ nur so als Idee.
-
Wenn dass so ist werde ich mir dann irgendwann mal ein Dual Relay zulegen müssen.
Kann man sowas auch für die IOs Implementieren?
-
http://www.tinkerunity.org/wiki/index.php/The_Real_Blacks_Wetterstation
Es ist kein Mond, es ist eine Wetterstation!
*uh?* Wie auch immer...
Es gibt eine neue Klasse welche ich hier einzeln veröfentliche:
Wetterstation für die Bricklets
- Umgebungstemperatur
- Lichtstärke
- Luftfeuchte
alle Bricklets sind Optional und können im Konstruktor als null übergeben werden.
Das erzeugte HTML\XML ist als HTML5 aufgebaut und kann mit einen in der Klasse hinterlegten und änderbaren CSS formatiert werden.
Spalten der Tabelle haben identische IDs
Zeilen der Tabelle haben abwechselnd lineA und lineB als Klasse.
So sollten alle Formatierungswünsche erfüllt sein ^^
Es kann ein Speicher-Pfad angegeben werden damit sollte es auch möglich sein, dass ihr das XML in einen Webroot legt und dann aus dem Netz darauf zugreift (lokal klappt es gut).
-
Welche SD Karte benötigt man um das Linux darauf zu packen?
Wie schnell muss diese sein?
Was habt ihr verwendet (und es geht)?
-
1.) C#, .Net Framework ist handlicher als die C++ Klassen.
2.) Nein das Programm muss nur ausgeführt werden und die Bricks per USB am Computer angeschlossen sein.
3.)
http://www.tinkerunity.org/forum/index.php/topic,55.msg4110.html#msg4110
In meinen Projekt gibts alles wichtige Befehle zusammen gefasst... was allgemeines kann ich zwar auch schreiben, aber dafür gibt es Tutorials.
http://msdn.microsoft.com/de-de/library/aa288436%28v=vs.71%29.aspx
if(true){
}else if(false){
}else{
}
switch(int_variable){
case 1:
break;
case 2:
break;
default:
break;
}
und noch vieles mehr im MSDN Tutorial...
-
UPDATE!
http://www.therealblack.net/TFUploads/TRB_Bot.7z
http://www.therealblack.net/TFUploads/Bot1_20120624.png
Changelog:...
- Test Projekt mit manueller Steuerung hinzugefügt.
- Projekt Bot 1 begonnen:
-- Flow Layout Buttons anstelle der fixen Buttons verwendet
-- Code Optimeirungen.
-- Bot Klasse -> Fasst alle Bricks zusammen.
-- Distanz halten Modus hinzugefügt.
--- Bot speichert die Entfernung
--- und hält diese Entfernung auf +-5 cm
-- IO16 Eingang 1 und 7 sind Kollisionsmelder
--- Bot fährt zurück und bleibt stehen.
-- neue Flow Layout Elemente (Led und Text)
--- Verallgemernerung der Elemente von der Brickübersicht.
Dieser Stand kann nun einen "Bot" auf einer definierten Distanz halten (+-5cm).
Es werden verschiedene Bricks benötigt sonst führt es zu einer Exception! 2 x DC ist im Hauptprojekt fest hinterlegt welche UID welche Kette steuert. Leider hängt eine Kette immer wieder beim drehen... entweder es blockt irgendwas die Mittelung oder die Spannung ist zu gering! Am IO16 ist Port B Pin 0 und 7 für die Kollisionserkennung gedacht. Beim Beenden der Hauptform wird dank der Utils (FormClosed Utils) ein angeschlossener LCD ausgeschaltet und die Leds des IMU wird deaktiviert.
-
"ArcaneDraconum: Die Chibis sind weg und nun?"
an die Frage hänge ich mich auch mal an.
Bis KW 31 ist noch etwas hin bis es die WLan Bricks gibt. (Wird diese dann mit der Antenne und dem Kabel sein oder wird es wie beim Chibi eine Ansteckantenne geben?)
-
Dazu kann ch nur sagen, dass meine Bestellung in ihren System angekommen ist und eine Auftragsnummer generiert wurde... muss also bald kommen... bald im geologischen sinne... ;-P
-
Was bedeutet es, wenn die Motoren erst ab einer bestimmten geschwindigkeit losfahren? Zuwenig Ausgangsspannung oder andere Sachen?
-
http://www.tinkerunity.org/forum/index.php/topic,569.0.html
Das Thema hatten wir schon.
@Fazit: In Zukunft ja, aber dann mit richtiger Sicherheit.
Edit: da war jemand schneller...
-
*ich freu mich*
Ja die IDs könnte man fest vergeben irgendwo im Code
ID = 1; // (Master) schreiben und im Generator dann
C++: BRICK_TYP_MASTER = 1;
C# : enum BrickTyp { Master = 1, ... }
erzeugen. Bitte einen None\Unknown bedenken -1 als Beispiel.
-
http://www.therealblack.net/TFUploads/TRB_Bot.7z
http://www.therealblack.net/TFUploads/Optionen.png
Update Time! Heute Icon Pack: Die 100x100, 200x200 und 500x500 Icons dürfen auch gerne als Avatare verwendet werden ;-P
Pfad: TRB_TF_RoboterProjekt\Utils\Dokumente\Icons_100
Die Liste im Bild erstellt sich über meine Enumerations Utils bereits. ansonsten haben die Dinger noch keine Funktion... Ich werde die Brickverwaltung etwas nach hinten schieben und am Bot weiter Coden. Zwar wäre es schöner die Optionen sehr Variabel zu halten, aber es braucht doch etwas Zeit alles implementiert zu bekommen.
Auf Option soll sich eine Eingabe maske für jeden Typ einzeln öffnen.
Speichern und Laden soll die Einstellungen in die DB schreiben.
Die Punkte zeigen in verschiedenen Farben an ob die daten bereits in der DB waren oder ob ein benötiger Brick(Typ) nicht gefunden wurde.
Die DB wird nun auch mit Initial Daten geschrieben: Anwendungsstellen Antieb links\rechts, Sensor vorne usw und auch die Bricktypen Master, DC usw werden aus meinen Enum in die DB geschrieben.
@TF: könnte man die Brick\Bricklets und Extention Typen im Generator in ein Enum generieren? So würde jeder die gleichen IDs verwenden können wenn ein Bricktyp abgefragt wird... nur so eine Idee.
@all: bei den Verwendungen (Antrieb links\rechts, Sensor vorne usw) kann man noch einiges erweitern wenn es noch wünsche dort gibt.
-
OT: Du hast einen Raspberry? Wielange hast du darauf gewartet und wo hast du ihn bestellt? Was für ein Netzzeil verwendest du?
-
Idee: ein "Dreherbrick" -> Ein Brick zum dazwischenstecken um zB den IMU im 90 Grad zum rest der Bricks anzustecken. Aber auch um die USB Buchsen etwas zu "verteilen".
Im grunde nichts anderes als, dass die Stecker 90\180 Grad gedreht werden.
-
zu deiner ersten Frage: ja...
Meine Enumerationen sollen in die Datenbank gespeichert werden. Ebenso sollen alle Einstellungen wie "welche UID der DCBricks ist welche Kette" auch in der DB Landen -> wenn keine DB vorhanden ist soll eine Eingabeform erscheinen in welcher man die Bricks den Motoren zu ordnen kann. Damit kann man den Code verwenden egal welchen Brick man gerade verwendet.
-
@AuronX: Default DB erstellt alle Tabellen wie ich sie im Bild gezeigt habe. (Über die muss ich aber nochmal nachdenken ^^)
Ansonsten freut es mich, dass es geklappt hat, dann ist der nächste Schritt mal die Initial-Daten mit einzufügen und eine Automatische Inventarisierung zu ermöglichen. Projektverwaltung kommt dann auch bald. Und es wird neue Bilder geben ^^ soviel zu tun...
-
Würden Stichpunkte und Step By Klick Anleitungen genügen?Hat niemand Lust, ein bisschen was beizusteuern in der Wiki? Die FAQ erweitern oder diese Seiten hier füllen: -
@AuronX: Ich lese natürlich mit ^^ Bei mir dauert es noch ein wenig ich muss erst die Datenhaltung optimieren und einige Hilfsklassen entwickeln bevor ich den Bot alleine Laufen lasse. (und die Chibis2.0 oder WLan Extentions müssen auch wieder verfügbar werden ich hab leider keine bestellt gehabt.)
Im Moment läuft er an der (USB)Leine und per Joysick gesteuert ganz gut.
-
Fehler 404: URL nicht gefunden
http://www.therealblack.net/TFUploads/TRB_Bot.7z
Ich hatte das T im Link platt gemacht -> ausgebessert
Sorry.
c# Anfängerfragen
in Anfängerfragen und FAQ
Geschrieben
// ---
lcd = new Tinkerforge.BrickletLCD20x4(UID2);
ipcon.AddDevice(lcd);
lcd.BacklightOn();
// ---
Das Lcd ist nicht in der Connection.
Dann im Setter:
lcd.WriteLine(0, 0, "Ausgabe: " + lcdtext + " " );
Die Leerzeichen am Ende sind nötig, damit die Verschiebung der negativen Zahlen ausgeglichen wird.