[Das DSP-CIM Forum] http://www.einfach-cnc.de/seiten/KnowHow_Platinen_fraesen.html habe ich mir als BildQuelle abgelegt. CIM BrainStorming SIDE Title: [ Visual CIM-ENGINE (V0.0) DL-->16/02/07 ] Ich soll mir in ca. 1 Wochen eine Basis-Modell, bzw. Konzept für eine CIM ausschauen, welches auch als Interessenpool fungiert. Wer hat Interesse hier mitzumachen ? Und seine Praxis bzw. Gedanken hier einzubringen. So ist auch das Aloha-Pool entstanden. Es geht um ein Konzept bzw. Hilfreiche Infos u. Links, Datenbank,Datenmodell, Gute Tool u. Boards von Black-Fin,Altera,Xilinx DSP,PSOC,EMBEDDED-CPUS bis zu 32Bit, W-ETHERNET,CPLD,FPGA,CAN,LIN "20-PIN ARITHMETISCHE-Co-CPU", wan braucht man so was. VGA,TFT,COLOR-SUPERKRANZ TFT,SENSITIVE TASTATUREN, RGB-STATUS_LEDS, Programmierbare Analoge Op-Amp's mit Muxer Hysterse, wie ICs LATTICE ispPAC30::80,Motorola.... bis z.B Digitale Filter & Regelschleifen, PIC 4 Axis Quadrature Encoder. Fa. IC-Haus sin/cos to Increment Encoder. Digitale Leistungantriebe. ES_Kontrolle. Nützliche Google Schlagworte für Mathematischen Modelle u. Algorithmen. "DXF Interpolation* algo*" "3D Scanning Laser Rastering algorithm" " PCB scanning reconstruction" POPL3.pdf ist zu gross zum posten. Es könnte auch CCD-Cam,Usb-Scanner sein. Prozess Rückmeldungen. Bzw. Messverfahren zu Kontrolle. Pragmatische einfache Algorithmen, Bis zum komplexen mit anspruchsvoller Mathematik. -------------------------------------------------------------------
Was machen deine Augen mit dem Hirn den eigentlich, wen die so ein PCB mit der CAM ansehen, u. die Leiterbahn bist zum Bohrloch verfolgen ???? Sehen die da nur grün,oder silbriges,rund,eckig,16Bit-Schatten. Köntest du die Kontur aus dem Kopf grob oder fein nachzeichnen ???? Du must dich in das EAGLE File und eindenken. Du must dich in die Struktur eine OCR Soft eindenken. Du must dich in einen blinden mit einem Stock im Nebel, auf der North-S-West Av. reindenken. Der tastet sich an der Strasse mit dem Stock pendelnd lang, und wo er gegenknallt geht ein Flag an, mach er eine Eintragung ins Temp-Log-File-Track#0.1-OfResulution-try#1 if(g_dblind_flg) x_vect,y_vect,cPartner_left,cPartner_right,Color[][],drill?,hole?,zeit,t emp..skeleton,possible,edge has_left_edge .... else x,y,Color[][],zeit,temp...... then; flg=clear; Was macht der Scanner eigentlich ???? Wichtig bei dem Rastering ist das du den Bitstream der in dem Bit-Array was aus der Cam komt step bei step analysierst. Um auf die Vector-Punkte, Edges wie ein Scanner Poligonzüge komst.
Bitte nur die Bilder ansehen, kan man auch grösser machen. http://www.stud.fit.vutbr.cz/~xvasic11/cl.cpld/
Suche nach: DXF Interpolation* algo PCB scanning reconstruction 3D Scanning Laser Rastering algorithm edge detector
kleine Vorlage für einen ALGO* in C structure Adaptive :> ADAPTIVE = struct 2 type changeable = unit 3 exception unsetMod 4 type edge = freader: (unit -> unit), 5 timeSpan: (Time.t * Time.t)g 6 type 'a node = fvalue : (unit -> 'a) red, 7 wrt : ('a -> unit) ref, 8 outEdges : edge list refg 9 type 'a mod = 'a node 10 type 'a dest = 'a node 11 val currentTime = ref(Time.init()) 12 val PQ = ref(Q.empty) ( Priority queue ) 13 fun init() = (currentTime := Time.init(); PQ := Q.empty) 14 fun mod cmp f = let 15 val value = ref(fn() => raise unsetMod) 16 val wrt = ref(fn(v) => raise unsetMod) 17 val outEdges = ref(nil) 18 val m = fvalue=value, wrt=wrt, outEdges=outEdgesg 19 fun change t v = 20 (if cmp(v,(!value)()) then () 21 else 22 (value := (fn() => v); 23 List.app (fn x => PQ := Q.insert(x,!PQ)) 24 (!outEdges); 25 outEdges := nil); 26 currentTime := t) 27 fun write(v) = 28 (value := (fn() => v); 29 Time.insert(currentTime); 30 wrt:= change(!currentTime)) 31 val = wrt := write 32 in 33 f(m); m 34 end 35 fun write(fwrt, ...g : 'a dest, v) = (!wrt)(v) 36 fun read(fvalue, outEdges, ...g : 'a mod, f) = let 37 val start = Time.insert(currentTime) 38 fun run() = 39 (f((!value)()); 40 outEdges := freader=run, 41 timeSpan=(start,(!currentTime))g 42 ::(!outEdges)) 43 in 44 run() 45 end 46 fun change(l: 'a mod, v) = write(l, v) 47 fun propagate'() = 48 if (Q.isEmpty(!PQ)) then 49 () 50 else let 51 val (edge, pq) = Q.deleteMin(!PQ) 52 val = PQ := pq 53 val freader=f,timeSpan=(start,stop)g = edge 54 in 55 if (Time.isSplicedOut start) then 56 propagate'() (* Obsolete read, discard.*) 57 else 58 (Time.spliceOut(start,stop); ( Splice out ) 59 currentTime := start; 60 f(); ( Rerun the read ) 61 propagate'()) 62 end 63 fun propagate() = let 64 val ctime = !currentTime 65 in 66 (propagate'(); 67 currentTime := ctime) 68 end 69 end
Hallo. Das solte man mal alles auf eine Extra CIM Rubrik holen. In den USA sind da gute infos in den UNIS orgs drin. Das könnte man hier aufspiegeln. Ich vemisse bei den CPLD's noch die Prog-Analogen Funktionen, so für Antriebe und Fu. Generatoren. Cypress die haben da so PSOC's bis zu 8 Pinner runter. Top sind auch noch die EZ-8 Encore mit Temp. Sensor. Aber ich warte noch ab was da kommt. Gruss QVT100 .
Der Bresenham-Algorithmus ist ein Algorithmus in der Computergrafik zum Zeichnen von Geraden oder Kreisen auf Rasteranzeigen. Nachzulen in Wiki. Gruss Holger.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.