Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Erste Schritte-> Bitte helft mir!!!

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
BloodyBeginner



Anmeldungsdatum: 07.04.2008
Beiträge: 2
Wohnort: Ratzenried

BeitragVerfasst am: 07.04.2008, 18:16    Titel: Erste Schritte-> Bitte helft mir!!! Antworten mit Zitat

Hallo Leute,

Ich hab vor mir eine Schaltung zu basteln, mit der ich die Geschwindigkeit meines Modellautos messen kann. Das soll so ablaufen: zwei Lichtschranken eine am Start, die andere am Ziel. Wird die erste unterbrochen, sollte das Programm eine Uhr starten, beim unterbrechen der zwieten Schranke sollte die Uhr stoppen. Dann sollte das Programm nach der manueller Eingabe distanz anhand der uns allen bekannten Formel die Geschwindigkeit berechnen.

Ich hab mich mit meinem Problem an die Elektirker vom ELKO gewandt und dan hat einer gemeint ich solle euch um Hilfe fragen, was die Software-technische Umsetzung dieses Projektes angeht. Leider hab ich noch nie auf QBasic programmiert.
Könnte mir von euch jemnad zur Seite steht und mir eine kleine Einführung geben??? (Woher bekomm ich die nötige Software zur Programmierung usw)

Mein nächstes Problem: Im ELKO wurde mir gesagt, dass ich über eine Serielle Schnittstelle gehen solle. Das hat mein Laptop nicht!!! Geht das auch über USB oder wird das zu komplizert???

Bitte verzeiht mir falls euch meine Fragen töricht oder dumm erscheinen, aber ich bin halt noch ein echtes Greenhorn grinsen

DAnke für eure Hilfe im Voraus

Gruß Marc
_________________
Wer fehler findet darf sie behalten!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 07.04.2008, 19:44    Titel: Antworten mit Zitat

Mit USB wird es tatsächlich kompliziert... Mein Rat: Für derartige Anwendungen extra ein alter Rechner für ab € 1,- im EBay zusammen mit einer MS-DOS 6.22-Lizenz ersteigern und daraus ein spezialisierter Hardware-Anwendungssteuerrechner aufsetzen, auf dem Du unbeschwert mit INP() und OUT auf dem Parallelport herumturnen kannst.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
BloodyBeginner



Anmeldungsdatum: 07.04.2008
Beiträge: 2
Wohnort: Ratzenried

BeitragVerfasst am: 07.04.2008, 21:28    Titel: Antworten mit Zitat

Ich hab noch nen alten Rechner allerdings mit Windows XP und da weiß ich die DOS Version nicht. Aber der hätte zumindest alles an seriellen Schnittstellen, was das Herz begehrt!!

Hab mir mittlerweile den Compiler runtergladen und erste Programme geschrieben. Ist eigentlich ganz easy, aber wie schreib ich da nen Treiber für meine Konstruktion, schließlich muss das Ding ja irgendwie erkannt werden. Und Dann sollte ich noch wissen, wie ich die Zeitschaltuhr Steuer, denn Sie sollte ja mit dem Durchbrechen der ersten Schranke starten und mit dem Durchbrechen der zwieten stoppen und dieser Wert dient dem Programm dann zum Berechnen der Geschwindigkeit.

Bitte um Hilfe

Gruß Marc
_________________
Wer fehler findet darf sie behalten!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 07.04.2008, 22:04    Titel: Antworten mit Zitat

windows xp ist DOS 7... aber das ist auch ziemlich egal, da windows xp für zeitkritische anwendungen überhaupt nicht geeignet ist... erst recht nicht an der serriellen schnittstelle. du kannst aber noch ein zusätzliches DOS-System auf den rechner schmeißen oder z.B. mit FreeDOS von CD booten.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Elektronix



Anmeldungsdatum: 29.06.2006
Beiträge: 742

BeitragVerfasst am: 07.04.2008, 23:02    Titel: Re: Erste Schritte-> Bitte helft mir!!! Antworten mit Zitat

BloodyBeginner hat Folgendes geschrieben:
Hallo Leute,

Ich hab vor mir eine Schaltung zu basteln, mit der ich die Geschwindigkeit meines Modellautos messen kann. Das soll so ablaufen: zwei Lichtschranken eine am Start, die andere am Ziel. Wird die erste unterbrochen, sollte das Programm eine Uhr starten, beim unterbrechen der zwieten Schranke sollte die Uhr stoppen. Dann sollte das Programm nach der manueller Eingabe distanz anhand der uns allen bekannten Formel die Geschwindigkeit berechnen.

Hallo, Kollege, mich dürftest Du aus dem ElKo auch kennen... zwinkern
Folgender vorschlag: Bau einen Zähler, der von der ersten Lichtschranke gestartet und von der zweiten gestoppt wird. Das Ergebnis kannst Du über die Schnittstellen einlesen. Mit einer dritten Lichtschranke gleich hinter der zweiten kannst Du den Einlesevorgang starten. Unter DOS per einfach Inp(Adresse). Unter XP brauchst Du dafür zusätzlich eine Treiber-DLL (z. B. inpout32,dll).
Die Adresse Deiner Schnittstellen erfährst Du unter DOS mit dem Programm msd.exe, unter XP in der Hardwareverwaltung

Für die Eingaben schau Dir die Befehle Input, inkey, Do/Loop (Schleife z. B. für Abfrage, ob die Messung wiederholt werden soll) und inp an.
_________________
Und die Grundgebihr is aa scho drin- DOS is jo nett.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 08.04.2008, 12:54    Titel: Antworten mit Zitat

Hallo

Ich habe mal ein kleines Programm gebastelt. Ich bin dabei davon ausgegangen, dass die Ausgänge der Lichtschranken auf Low-Pegel gehen, wenn sie unterbrochen werden und sonst auf High sind. Die Eingänge der seriellen Schnittstelle erkennen Spannungen unter 1 Volt (-12V bis +1V) als low und solche über 1,25 Volt (+1,25V bis +12V)als high. Dazwischen ist der Zustand unbestimmt (Hysterese). Du hast also bei den Signalpegeln der Lichtschranken eine recht große Bandbreite. Die erste Lichtschranke ist mit dem COM-Eingang CTS verbunden, die zweite mit DSR. Nicht vergessen, auch die Massen der Lichtschranken und des COMs zu verbinden.

Die Zeit wird mit Hilfe des internen Zeitgeberbausteins (PIT) auf ca. 0,0002 Sekunden genau gemessen, allerdings erreichst du diese Genauigkeit nur unter reinem DOS. Du kannst dir ganz einfach eine DOS-Bootdiskette erstellen. Im Windows-Explorer Rechtsklick auf das Diskettenlaufwerk, Formatieren..., Haken bei "MS-DOS Startdiskette erstellen" setzen, starten. Dann von dieser Diskette booten.

Code:
CLS
INPUT "Messstrecke in Meter: ", s  'Laenge der Messstrecke eingeben

OUT 67, 36                         'Timer initialisieren
OUT 64, 0

DO
 tg& = 0                           'Gesamtzeit auf Null setzen

 DO
  start% = INP(1022) AND 16        'CTS auslesen
 LOOP UNTIL start% = 0             'Erste Lichtschranke unterbrochen

 talt% = INP(64)                   'Timerstand auslesen

 DO
  tneu% = INP(64)                  'Timerstand auslesen
  dt% = talt% - tneu%              'Timerdifferenz berechnen
  IF dt% < 0 THEN dt% = dt% + 256  'Ueberlauf ausgleichen
  tg& = tg& + dt%                  'Differenz zur Gesamtzeit addieren
  talt% = tneu%
  ziel% = INP(1022) AND 32         'DSR auslesen
 LOOP UNTIL ziel% = 0              'Zweite Lichtschranke unterbrochen
 
 t = tg& / 4660                    'Der Timer laeuft mit 4660 Hz
 v = s / t                         'Geschwindigkeit berechnen
 PRINT "v =";
 PRINT USING "###.###"; v;
 PRINT " m/s"
LOOP WHILE INKEY$ = ""             'Beenden mit beliebiger Taste


Ich hoffe, du kannst damit etwas anfangen, Erklärungen findest du vielleicht auch auf meiner Homepage (Link in meiner Signatur).

Gruß
Skilltronic
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Heizi



Anmeldungsdatum: 19.01.2005
Beiträge: 309

BeitragVerfasst am: 08.04.2008, 18:16    Titel: Antworten mit Zitat

Zitat:


Mein nächstes Problem: Im ELKO wurde mir gesagt, dass ich über eine Serielle Schnittstelle gehen solle. Das hat mein Laptop nicht!!! Geht das auch über USB oder wird das zu komplizert???

falls ich mich nicht irre gibts da adapter für pcmia und/oder usb

ist Schleichwerbung verboten????
Naja egal nur mal als Beispiel:
http://www.amazon.de/LOGILINK-USB-Adapter-2-0-Seriell/dp/B000QF2ZNE/ref=pd_bbs_sr_1?ie=UTF8&s=ce-de&qid=1207671180&sr=8-1

Hmm ich kenn mich da hardwaremäßig überhaupt nicht aus aber ist es rein theretisch möglich wenn man da nen Kurzschluss
am seriellen Port baut das Mainboard zu zerstören???
Auf jeden Fall aufpassen

hmm da fällt mir zum Adapter ein, dass du dafür evtl Win XP brauchst
MfG
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
wolfjuli



Anmeldungsdatum: 06.03.2008
Beiträge: 50

BeitragVerfasst am: 08.04.2008, 20:17    Titel: Antworten mit Zitat

Also das mit dem Adapter ist zwar eine gute Idee, aber den kannst du nicht direkt ansprechen, weil du dafür den USB-Port ansprechen musst. Fazit: Bringt nichts. Der COM-Port ist darüberhinaus, im gegensatz zu LPT-Port, überlastgesichert, womit man das Mainboard nicht zerstört.

LG
Julian
_________________
Alles sollte so einfach wie möglich gemacht werden, aber nicht einfacher.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 08.04.2008, 21:09    Titel: Antworten mit Zitat

Was meinst du, was so ein Adapter macht...? Natürlich wird dadurch ein waschechter COM-Port ins System integriert! Einen USB-Kartenleser sprichst du als programmierer ja auch nicht über USB, sondern über das windows-dateisystem an...
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Elektronix



Anmeldungsdatum: 29.06.2006
Beiträge: 742

BeitragVerfasst am: 09.04.2008, 09:00    Titel: Antworten mit Zitat

Jojo hat Folgendes geschrieben:
Was meinst du, was so ein Adapter macht...? Natürlich wird dadurch ein waschechter COM-Port ins System integriert! Einen USB-Kartenleser sprichst du als programmierer ja auch nicht über USB, sondern über das windows-dateisystem an...

Stimmt schon, aber dawischen sitzen noch zwei USB-Controller (einer im Rechner und einer im Kartenleser), die ebenfalls programmiert sind. Die Ansprache dafür läuft über Windows-Treiber, niemals direkt. Schnittstellenadapter für USB sind also keine Alternative.
Es gibt kleine programmierbare USB-Controller zu kaufen, da kannst auch mal im ElKo fragen. Aber solange man sich nicht mit Programmierung auskennt (nicht mal in QB), ist das wohl eine Nummer zu hoch.
Die normalen seriellen und parallelen Schnittstellen sind da einfacher zu handhaben.
_________________
Und die Grundgebihr is aa scho drin- DOS is jo nett.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 09.04.2008, 11:56    Titel: Antworten mit Zitat

Elektronix hat Folgendes geschrieben:
Die Ansprache dafür läuft über Windows-Treiber, niemals direkt.

Was aber nichts zur sache tut, da trotzdem ein "echter" COM-port zur verfügung steht und der unter windows sowieso schon träge genug ist.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz