schnelle µC

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 06 2 2026  19:37:43      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Oszilloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte

Gehe zu Seite ( 1 | 2 Nächste Seite )      


Autor
schnelle µC

    







BID = 27361

Dodegy

Neu hier



Beiträge: 28
ICQ Status  
 

  


Hallo,

Ich weiß das es schon zig Neulingsanfragen gibt aber ich kenne mich mit µC halt noch nicht aus. Ich habe mich jetzt doch entschlussen für mein proyekt einen µC zu verwenden.

Er sollte keine große hardware brauchen um Programmiert zu werden, da ich kein Starterkit kaufen will.
Weiterhin ist das wichtigste das er recht schnell ist und mit großen zahlen schnell rechnen kann. Warscheinlich läuft die software darauf hinaus ein reletiv großes Gleichungssystem zu lösen welches über Matrizen gehen wird. Also multiplizieren und teilweise dividieren sollte er schnell können. Zusätzlich wäre noch wichtig zu wissen ob winkelberechnungen mit Sinus und Cosinus in Maschinensprache möglich sind oder ob ich da erst Zuordnungstabellen machen muss.

Sonnst wäre wichtig eine mögliche UART Verbindung und ein ADC, was jedoch warscheinlich in jedem µC vorhanden ist.
Also habtsächlich ist die geschwindigkeit der mathematischen funktionen wichtig.

Ich danke für hilfe. Und bitte nicht sauer sein ich muss mich in das thema erst noch einarbeiten.

BID = 27424

FatalError

Stammposter



Beiträge: 498
Wohnort: Berga /Elster
ICQ Status  

 

  

Hi
Versuchs mal mit nem Atmel ATmega128-16AI.
Da ich nicht weis, was du vorhast ist der mir als erstes eingefallen, der hat 16MHZ Taktfrequenz und ne riesen-Ausstattung hat. Allerdings ist er auch n bissel teuer.
Am besten teilst du uns mal mit, was du genau vorhast zu bauen.

MFG
FatalError

BID = 27457

Dodegy

Neu hier



Beiträge: 28
ICQ Status  

ich baue ein gerät um die Raumposition eines objektes zu bestimmen. Dazu benutz ich 3 Ultraschallsender und einen Empfänger. Aus der Laufzeit wird die strecke und daraus die Position bestimmt.
Nach ein paar ansätzen kamm ich dazu die 3 sender mit einer zeitdifferenz nacheinander zuu schalten ohne zu warten bis die erste messung zu ende ist. Die 3 Sender sind 40cm entfernt von einander, sodass 2ms Zeitdifferenz reichen das sich die signale nicht überlappen.
Haubtproblem ist die Trigersignale 2 ms zu verzögern und da ich nicht allzuviel ahnung von Hardware hab, versuch ich halt eine Softwarelösung. Der µC soll den 1. sender Triggern, 2ms warten, den 2., 2ms warten, 3. schalten. Der Ultraschallempfänger geht auf einen AD kanal des µC. Die werte werden nach maxima geprüft und die Position berechnet. Der PositionsVector wird dann über eine RS232 an den PC gegeben. und eine Neue messung eingeleitet.

Soweit das Endprodukt... Erstmal werden alle AD-Werte an den rechner gegeben um zu sehen wie es sich mit störsignalen und anderen verhält. Später soll das auswerten auch der µC übernehmen.

Spezielle anwendungen kann sich jetzt bestimmt jeder vorstellen .

BID = 27481

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach


Zitat :
...um die Raumposition eines objektes zu bestimmen. Dazu benutz ich 3 Ultraschallsender...


Wegen der Mehrdeutigkeit der Hyperbeln brauchst Du dazu mindestens vier Sender.
Mit dreien kannst Du nur die Position in einer Ebene bestimmen.

Mit den gängigen Single Chip Mikros ist mathematisch nicht viel los.
Floatingpoint Arithmetik kann von Haus aus keiner, und trigonometrische Funktionen erst recht nicht.
Für die größeren gibts aber Software Libraries in denen entsprechende Funktionen enthalten sind. Es kann aber sein, daß in den Programmspeicher dann nicht mehr viel hineinpaßt.
Hinzu kommt die notorische RAM-Knappheit von µCs.
DSPs sind in dieser Hinsicht viel besser dran, was die aber wirklich gut können, ist MultiplyAndAdd von Vektoren. Die langsame Division braucht dort kein Mensch.

Früher gabs zur Unterstützung der µP, außer den sehr teuren mathematischen Coprozessoren, sog. "Number Cruncher".
Das waren im Prinzip wissenschaftliche Taschenrechner-Chips mit einer parallelen Schnittstelle. Mit denen konnte man zwar alles machen, aber leider waren sie auch etwas langsam.

Vielleicht bist Du ja mit einem 80x86 Universal Prozessor besser bedient. Seit dem 486 habe die alle einen mathemathischen Coprozessor an Bord, brauchen aber sehr viel mehr Energie als µP's oder DSPs.

Ich glaube, Du solltest dich erst einmal um die mathematische Seite kümmern und dort auch die Genauigkeitsanforderungen untersuchen. Dann wirst Du bald genauer wissen welche Anforderungen Du an den Rechenknecht hast.



_________________
Haftungsausschluß:



Bei obigem Beitrag handelt es sich um meine private Meinung.



Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.



Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !

BID = 27510

Dodegy

Neu hier



Beiträge: 28
ICQ Status  

zu der mathematischen seite hast du mich unterschätzt .
Die auflösung ist schon berechnet. War recht schwer, da es ja Kugeln-abschnitte sind mit denen man rechnet. Die auflösung ist in ordnung.
Wegen den 4 Sendern muss ich dir recht geben man hat keine genaue Position mit 3 Sendern. Eine Variable kann nicht aufgelöst werden. Das ist aber nicht weiter schlimm. Versuch es dir so vorzustellen. 3 sender spannen eine ebene auf. Das ist die spiegelebene. Die fehlende Variable die aufgelöst würde mit einem weiteren sender würde nur bestimmen auf welcher seite der ebene man sich befindet und wenn ich die 3 sender in eine ecke stell hat sich das mit dahinter dann schon erledigt . Oder anders gesagt wenn du den abstand von der position zu allen 3 sendern hast, kann die position nur hinter den sendern oder davor sein, es gibt nur 2 varianten die offen bleiben. Ist ja alles nicht kartesisch aufgebaut. Sind sozusagen polarkoordinatensysteme in einander verschoben.
Aber dickes lob das dir aufgefallen ist das es eigentlich nicht genau bestimmbar ist, bist bis jetzt der erste der von dem projekt weiß und das bemerkt hat.

Wegen den ganzen Prozessoren muss ich mich mal informieren. Wie sieht das aus im bezug auf Hardware aufwand? Ist das dann immernoch alles auf einem Chip (RAM und IRQ Controler) oder muss ich dann selber nen Board wie im PC basteln?

BID = 27512

FatalError

Stammposter



Beiträge: 498
Wohnort: Berga /Elster
ICQ Status  

Du brauchst garnix dazubasteln, solange du einen µC verwendest und keinen Prozessor.
Die µC haben alles an Bord, was du brauchst, nur eine Ausgangsverstärkung durch Transistoren währe anzuraten.
Außerdem wirst du einen MAX brauchen, um den µC mit dem seriellen Port des PC's komunizieren zu lassen.

BID = 27516

Dodegy

Neu hier



Beiträge: 28
ICQ Status  

ja dazu hab ich auch mal eine frage. Da in den meisten tuts und erklärungen immer eine Baudrate von 9200 eingestellt wird. Hat es schon mal jemand mit 115k Baud oder mehr probiert? Geht das auch ohne Hardwarehandshake?

BID = 27519

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach


Zitat :
...Die auflösung ist in ordnung. ...


Was heißt das ? 8-bit, 16-bit, 24 bit ? noch mehr ?
Muß Gleitkommaritmetik verwendet werden oder kann man mit Integers rechnen. Wie sieht es mit der Fehlerfortpflanzung aus ?

Die Standlinien sind in Deinem Fall vielleicht Kreise bzw. Kugelschalen, weil der Empfänger genau weiß, wann das Signal losgeschickt wurde.

Bei den üblichen Navigationsverfahren wie DECCA, LORAN, GPS, OMEGA weiß das der Empfänger aber nicht, sondern er kann nur Laufzeitdifferenzen messen.
Deshalb ergeben sich dort als Standlinien Hyperbeln bzw. Hyperboloide.

Imho unterschätzt FatalError den Rechenaufwand gewaltig.
Ich könnte mir vorstellen, daß es für die meisten Microprossesoren recht eng bis zu eng im Speicher wird.
Könntest Du Dich nicht mit einem kompletten PC-Mainboard (evtl. auf einer Europakarte) anfreunden ?
Das muß ja kein 3-GHz Renner sein.
Da hast Du eine preiswerte, gut zu programmierende und leistungsfähige Platform, auf der überdies die meiste Peripherie schon vorhanden ist.
Der Einsatz von MS-DOS ist dann zwar bequem, aber nicht zwingend.



_________________
Haftungsausschluß:



Bei obigem Beitrag handelt es sich um meine private Meinung.



Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.



Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !

BID = 27532

Dodegy

Neu hier



Beiträge: 28
ICQ Status  

Jap. glaub GPS hat sogar 5 sender und 2 empfänger oder umgekehrt weiß net genau. Aber das prob der unterschiedlichen uhren hab ich ja net da der empfänger die daten wieder zurückbefördert und ein system alles auswertet.

Die Auflösung hab ich anhand des RS232 engpasses betrachtet. Weitere engpässe können in der Umwandlungszeit des ADC liegen (wenn die signalstärke mit der entfernung nicht stark abnimmt kommt auch ein Komarator in frage). Die auflösung des ADC ist nur wichtig das er echos nicht mit dem 1. maxima verwechselt. Jedoch denk ich nicht das Floating Point benötigt wird, also Integerwerte. Und ich denk mal 16 Bit reichen, aber ich werd das programm was dann drauf soll jetzt mal genau angehen.

Das einzige problem ist ich habe noch keine testwerte. ich würde gern erstmal alle werte an den rechner weiterleiten und sehen ob es viel berechnung braucht erstmal aus den daten die zeiten rauszufinden.
in dem sinne werd ich glaubich erstmal einen ganz einfachen chip kaufen und im rechner testen.

BID = 27536

FatalError

Stammposter



Beiträge: 498
Wohnort: Berga /Elster
ICQ Status  

Warum belässt du es nicht dabei, die ganze Peripherie über einen A/D-Wandler an den PC anzuschließen?
Währe doch eigentlich einfacher, wenn du die Daten sowieso in diesen übertragen willst.

BID = 27540

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach


Zitat :
Das einzige problem ist ich habe noch keine testwerte. ich würde gern erstmal alle werte an den rechner weiterleiten und sehen ob es viel berechnung braucht erstmal aus den daten die zeiten rauszufinden.
in dem sinne werd ich glaubich erstmal einen ganz einfachen chip kaufen und im rechner testen.


Hast Du ein Oszilloskop ?
Dann kannst Du einfach Sender und Empfänger testen.

Ansonsten würde ich Dir emfehlen, die gesamte Entwicklung auf dem PC zu machen.
Da hast Du zum Nulltarif gewaltige Reserven an Speicher und Rechenleistung und Du kannnst Du am einfachsten Programm ändern, Rechengenauigkeit ändern, Auswertungen machen etc.

Wenn dann alles wie gewünscht klappt, kannst Du es immer noch auf eine andere Platform portieren.

Die Auswertung des US-Impulses könntest Du mit der Soundkarte machen. Dazu mußt Du nur das Signal fi des Mikrofons nach gehöriger Vorverstärkung auf etwa 10kHz heruntermischen. Das geht mit vielen Mischer-Schaltungen und einem sinusförmigen Oszillatorsignal fo von z.B. 45kHz.
Wenn beispielsweise fi=33kHz ist, bilden sich am Mischer die Frequenzen fi+fo=78 kHz (wird mit Tiefpass weggefiltert) und fo-fi=12kHz welches im Nutzbereich der Soundkarte liegt.
Frag mich aber bitte nicht, wie man die Soundkarte aus Windows oder DOS anspricht, ich weiß es nicht.
Bei der Linux Gemeinde solltest Du aber fündig werden.

Ich weiß ja nicht welche Ortungsgenauigkeit / Entfernungsbereich Dir vorschwebt, aber evtl. mußt Du bei den Berechnungen auch noch berücksichtigen, daß weder der Geber noch der Empfänger punktförmig sind. Ich könnte mir vorstellen, daß diese Korrektur recht eklig sein kann.



_________________
Haftungsausschluß:



Bei obigem Beitrag handelt es sich um meine private Meinung.



Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.



Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !

BID = 27552

Dodegy

Neu hier



Beiträge: 28
ICQ Status  

@FatalError: nur zu testzwecken über den rechner danach will ich es vom µC machen lassen damit die cpu bissel entlastung hat.

@perl:Soundkarte ist eine idee. Da spar ich mir einen RS232 anschluss. Allerdings wie du richtig bemerkt hast wird die auswertung recht ecklig. Wegen der berechnung ansich brauchst du dier keine platte machen Software-Fragen wirst du von mir sehr wenig sehen . Aber ich werd es über rs232 wohl machen müssen da ich wenn alles klappt mindestens 2 empfänger anschließen will. Wenn das erste geschaft ist brauch ich ja nur einen weiteren empfänger.. das mag ich an open end lösungen . Und damit ich euch net so auf die folter spann.. "warum denn nun 2"..: ich habe 2 hände und mäuse gingen mir schon immer auf den keks

Jap ich werds erst im rechner machen und dann exportieren.. aber drinbleiben kanns net, da das bei dauerbetrieb ziemlich auf die cpu gehen dürfte.

[ Diese Nachricht wurde geändert von: Dodegy am  6 Aug 2003 17:49 ]

BID = 27576

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach


Zitat :
Aber ich werd es über rs232 wohl machen müssen da ich wenn alles klappt mindestens 2 empfänger anschließen will.


Wieso ?
Die Soundkarte kann doch Stereo, hat somit zwei AD-Wandler an Bord, die von einigen 10Hz bis 20kHz mit 16Bit Auflösung (nicht Genauigkeit!) arbeiten.

RS232 ist imho für Timing Zwecke ziemlich ungeeignet.

_________________
Haftungsausschluß:



Bei obigem Beitrag handelt es sich um meine private Meinung.



Rechtsansprüche dürfen aus deren Anwendung nicht abgeleitet werden.



Besonders VDE0100; VDE0550/0551; VDE0700; VDE0711; VDE0860 beachten !

BID = 27593

Dodegy

Neu hier



Beiträge: 28
ICQ Status  

deswegen solls ja der µC machen. Hoffe ur zu testzwecken wird dir rs232 hinhauen. wenn nicht werd ich ein paar werte im µC speichern und danach übertragen. Wenn alles klappt bekoomt der pc ja keine zeitkritischen sachen mehr.

BID = 27693

Jornbyte

Moderator



Beiträge: 7379

Der TMS320C40 ist ein Floating Point Digital Signal Processor. Mit 33-ns Instruction Cycle Time, 330 MOPS, 60 MFLOPS, 30 MIPS, 384M Bytes/s bekommt er bestimmt Lachanfälle für deine Aufgabe. Nachteil: du brauchst noch nen ganzen Schluck an externer Peripherie. (Ram, Rom...)
Ach ja, das Datenblatt:

Uploaded file: TMS320C40.pdf

_________________
mfg Jornbyte

Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.


      Nächste Seite
Gehe zu Seite ( 1 | 2 Nächste Seite )
Zurück zur Seite 0 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 13 Beiträge im Durchschnitt pro Tag       heute wurden bisher 21 Beiträge verfasst
© x sparkkelsputz        Besucher : 188977364   Heute : 19043    Gestern : 25821    Online : 217        6.2.2026    19:37
35 Besucher in den letzten 60 Sekunden        alle 1.71 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0418961048126