Korkens Optical Flow sensor
Re: Korkens Optical Flow sensor
Jag tänkte om man ville stoppa in sensorn i någon sorts låda när man monterar den. Om alla kontakter sitter på baksidan eller åtminståne på sidan så känns det som att det skulle bli enklare.
Re: Korkens Optical Flow sensor
Ahh, du tänkte så! 
Jo, det kan helt klarat vara lite med JTAG kontakten pekandes nedåt. Fixar det.

Jo, det kan helt klarat vara lite med JTAG kontakten pekandes nedåt. Fixar det.
Re: Korkens Optical Flow sensor
Så, uppdaterat schema för nya kontakter osv. 
4 st servon max blev det och det blir också via en JST header. En vanlig stiftlist blev för stort.

4 st servon max blev det och det blir också via en JST header. En vanlig stiftlist blev för stort.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: Korkens Optical Flow sensor
Dum fråga kanske, men vad är det för gränssnitt mot en sådan här sensor? Jag menar inte om det är i2c eller SPI, utan vilken information får man från en optical flow sensor? Är det information om rörelser i xyz led?
Re: Korkens Optical Flow sensor
m_thread:
Ut från sensorn blir det enhetslösa variabler i X och Y, så man sedan bara kan plugga in datat för linsen samt höjd så får man det i hastighet.
Det jag funderar på nu när jag tog en Artix-7 är att implementera resten av optical flow algoritmen (tog bara XY delen förut). Med den så får man ut relativ skalning som kan konverteras till hastighet i Z samt att man får ut rotation.
Så har jag det blir det hastighet i (enhetslös) XYZ samt absolut rotation för varje bildruta.
LVDS grejen:
När det gäller LVDS delen så blir jag lite osäker på kontakter osv, Molex har en trevlig sköldad kabel men de kostar 100kr/st.
Samt, har aldrig testat LVDS med en FPGA än så måste läsa på mig lite om hur de fungerar och vad som är kraven på IO och spänningar.
Ut från sensorn blir det enhetslösa variabler i X och Y, så man sedan bara kan plugga in datat för linsen samt höjd så får man det i hastighet.
Det jag funderar på nu när jag tog en Artix-7 är att implementera resten av optical flow algoritmen (tog bara XY delen förut). Med den så får man ut relativ skalning som kan konverteras till hastighet i Z samt att man får ut rotation.
Så har jag det blir det hastighet i (enhetslös) XYZ samt absolut rotation för varje bildruta.

LVDS grejen:
När det gäller LVDS delen så blir jag lite osäker på kontakter osv, Molex har en trevlig sköldad kabel men de kostar 100kr/st.
Samt, har aldrig testat LVDS med en FPGA än så måste läsa på mig lite om hur de fungerar och vad som är kraven på IO och spänningar.
Re: Korkens Optical Flow sensor
LVDS är ju som du vet differentiell och kräver ett signalpar. Eftersom det är just differentiell signalering så tar det magnetiska fältet ut varandra om ledarna i paren ligger nära varandra, common mode störningar påverkar ju båda ledarna ganska lika och ger också mycket liten effekt. Rent generellt ger LVDS mycket lägre EMI effekter än andra standarder.
När det gäller FPGA och xilinx måste man tänka på att den banken man ska köra LVDS har rätt matningspänning. Man kan ofta inte blanda olika I/O-standarder i en och samma bank om de kräver olika spänningar.
Lite allmänt om LVDS: https://www.fairchildsemi.com/applicati ... N-5017.pdf
När det gäller FPGA och xilinx måste man tänka på att den banken man ska köra LVDS har rätt matningspänning. Man kan ofta inte blanda olika I/O-standarder i en och samma bank om de kräver olika spänningar.
Lite allmänt om LVDS: https://www.fairchildsemi.com/applicati ... N-5017.pdf
Re: Korkens Optical Flow sensor
Har tittat lite på ditt schema. Allmänt ser det ut att bli ett fint litet kort. Jag kan tyvärr inte jämföra med våra designer med Artix7:or förrän om några veckor. Sedan är jag ingen FPGA:designer, så där har jag inte mycket att komma med.
* Brukar man inte markera spänningsnivåerna på de olika bankerna så att man kan lätt kan se att man satt rätt spänningsnivåer på de kopplingar man gör.
* Jag tror inte du behöver en skärmad kabel för LVDS:arna. Det räcker med en flexkontakt bara den inte skall vara för lång. Men jag tycker du kan skippa den här funktionen helt. Min åsikt.
* Du kan lägga JTAG:en på en mindre kontakt också om du vill, bara att göra en patchkabel från stiftlist till vilken du nu väljer.
* Behövs ingen serieterminering på DDR2-minnen? Kan inte kolla hur vi har på våra designer för att jämföra förrän om några veckor, men du hade väl snott den designen rakt av från Avnet eller Xilinx eller nån annan så det skall väl vara fine.
* Grymt bra att ha FTDI-chippet där för debugning i början och om man vill köra applikationer på datorn som använder funktionen. Kanske finns parametrar som behöver ställas in i hur man vill att det skall fungera? Finns det utrymme i FLASH för settings? Väldigt bra för att kunna testa prestanda med.
* USART/SPI-kopplingen ser bra ut, men jag hade valt PicoBlade från Molex istället för de där JST-kontakterna. Hade satt samma på JTAG:en också. PicoBlade kan man krimpa själv även om det är väldigt litet. Men du kanske har JST-krimpverktyget så det är därför du väljer den?
* Är det tänkt att det skall gå att mata kortet från UART/SPI-kontakten? Det hade passat mig väldigt bra, men räcker strömmen till genom ett stift? Det är enda stället som +5V_CON går till, så jag antar att det är tänkt så.
* Servo-kontakten hade jag också skippat helt. Hur skall den ställas in? Det blir en jäkla massa kodande om allt skall vara inställbart med hur servosignalerna skall styras beroende på vad kameradatat ger ut. Det kommer sluta med att man ändå behöver ett nytt kort med en processor på som syr ihop allt.
Det är mina inputs.
* Brukar man inte markera spänningsnivåerna på de olika bankerna så att man kan lätt kan se att man satt rätt spänningsnivåer på de kopplingar man gör.
* Jag tror inte du behöver en skärmad kabel för LVDS:arna. Det räcker med en flexkontakt bara den inte skall vara för lång. Men jag tycker du kan skippa den här funktionen helt. Min åsikt.
* Du kan lägga JTAG:en på en mindre kontakt också om du vill, bara att göra en patchkabel från stiftlist till vilken du nu väljer.
* Behövs ingen serieterminering på DDR2-minnen? Kan inte kolla hur vi har på våra designer för att jämföra förrän om några veckor, men du hade väl snott den designen rakt av från Avnet eller Xilinx eller nån annan så det skall väl vara fine.
* Grymt bra att ha FTDI-chippet där för debugning i början och om man vill köra applikationer på datorn som använder funktionen. Kanske finns parametrar som behöver ställas in i hur man vill att det skall fungera? Finns det utrymme i FLASH för settings? Väldigt bra för att kunna testa prestanda med.
* USART/SPI-kopplingen ser bra ut, men jag hade valt PicoBlade från Molex istället för de där JST-kontakterna. Hade satt samma på JTAG:en också. PicoBlade kan man krimpa själv även om det är väldigt litet. Men du kanske har JST-krimpverktyget så det är därför du väljer den?
* Är det tänkt att det skall gå att mata kortet från UART/SPI-kontakten? Det hade passat mig väldigt bra, men räcker strömmen till genom ett stift? Det är enda stället som +5V_CON går till, så jag antar att det är tänkt så.
* Servo-kontakten hade jag också skippat helt. Hur skall den ställas in? Det blir en jäkla massa kodande om allt skall vara inställbart med hur servosignalerna skall styras beroende på vad kameradatat ger ut. Det kommer sluta med att man ändå behöver ett nytt kort med en processor på som syr ihop allt.
Det är mina inputs.
Re: Korkens Optical Flow sensor
Angående LVDS-kontakten så behöver man ju inte montera den som standard. Sedan kan jag hålla med om att servokontakterna troligtvis ger mer bök än vad de ger fördelar. Mer en grej som skulle bredda användningsområdet. Men eftersom servon kräver bra avkoppling och strömförsörjning så är det nog en stor risk med dem...
Re: Korkens Optical Flow sensor
Agwan:
>> * Brukar man inte markera spänningsnivåerna på de olika bankerna så att man kan lätt kan se att man satt rätt spänningsnivåer på de kopplingar man gör.
Mycket bra rekommendation! Fixat!
>> * Jag tror inte du behöver en skärmad kabel för LVDS:arna. Det räcker med en flexkontakt bara den inte skall vara för lång. Men jag tycker du kan skippa den här funktionen helt. Min åsikt.
Har kollat mer på LVDS grejen och den bank jag har kvar stödjer bara 2.5V LVDS.
Pga detta så kommer jag skippa LVDS, vill inte dit med en till spänningsregulator osv.
>> * Du kan lägga JTAG:en på en mindre kontakt också om du vill, bara att göra en patchkabel från stiftlist till vilken du nu väljer.
Jo, det är klart, men det passar så bra med en Digilent JTAG som jag har nu - men funderar på att ha en mindre kontakt.
Det visade sig att jag behövde lite plats där jag satte JTAGen för DDRet. Så kanske byter till en ytmonterad ändå.
>> * Behövs ingen serieterminering på DDR2-minnen? Kan inte kolla hur vi har på våra designer för att jämföra förrän om några veckor, men du hade väl snott den designen rakt av från Avnet eller Xilinx eller nån annan så det skall väl vara fine.
Det behövs inte.
Xilinx FPGAn samt DDR2 minnet har ODT (on die termination) vilket gör att man bara behöver terminera klockan.
Men jag kopierade bara Digilents NEXYS4-DDR korts interface, sedan läste jag på mig om det.
>> * Grymt bra att ha FTDI-chippet där för debugning i början och om man vill köra applikationer på datorn som använder funktionen. Kanske finns parametrar som behöver ställas in i hur man vill att det skall fungera? Finns det utrymme i FLASH för settings? Väldigt bra för att kunna testa prestanda med.
Det va lite tanken att man kunde fixa med inställningar så, arbetar dock fortfarande på hur stort Flash som behövs.
I referensdesigner har de 128Mbit för 100T så tog samma själv, men hittar inte hur mycket av de som behövs. Det jag hittills hittat är vad som är max för Atrix-7 familjen som va lite över 200Mbit, men det är för den största.
>> * USART/SPI-kopplingen ser bra ut, men jag hade valt PicoBlade från Molex istället för de där JST-kontakterna. Hade satt samma på JTAG:en också. PicoBlade kan man krimpa själv även om det är väldigt litet. Men du kanske har JST-krimpverktyget så det är därför du väljer den?
Jag kollade på PicoBlade förut, men tog JST för att kontakten man stoppar i dom finns med kabel billigt på eBay.
Samt så kostar en JST hälften av en PicoBlade. Finns det några mekaniska fördelar med PicoBlade? Jag kan ju byta till den om jag vill.
>> * Är det tänkt att det skall gå att mata kortet från UART/SPI-kontakten? Det hade passat mig väldigt bra, men räcker strömmen till genom ett stift? Det är enda stället som +5V_CON går till, så jag antar att det är tänkt så.
Det är precis tanken.
USB samt UART/USI kontakten.
Själv JSTn klarar 1A vilket jag tror ska räcka mer än väl, men vi får se vad designen säger när det börjar närma sig.
Jag hoppas att bara USB med sina 2.5W ska räcka. Dock svårt att veta innan allt är klart. Min spänningsdel klarar upp till 2A (10W) så kan uppgradera lite om det behövs.
>> * Servo-kontakten hade jag också skippat helt. Hur skall den ställas in? Det blir en jäkla massa kodande om allt skall vara inställbart med hur servosignalerna skall styras beroende på vad kameradatat ger ut. Det kommer sluta med att man ändå behöver ett nytt kort med en processor på som syr ihop allt.
Jo, jag har mer och mer kommit fram till samma slutsats.
Kommer sikta mer på att den kommer vara en renodlad sensor (därför jag inte har gyron eller sonar på den direkt) så får sedan en uC eller något fixa resten.
Andax:
LVDS delen ser ut som att den kommer falla bort, vill inte ha dit 2.5V på kortet också.
Dock så kan den fixa en 1.8V LVDS, så kollar på det också - men kan inte lova något.
Utöver detta så läste jag på mig lite om stereoskopisk 3D. Ett problem med att inte ha två kamera sensorer på ett kort kommer bli att veta exakt avstånd samt rotation mellan dessa.
Detta är extremt viktigt för detta. Så även om man kan koppla ihop två sensorer så skulle det nog vara praktiskt svårt att få det bra.
Jag har dock en liten plan för detta. Att göra ett centralt kort med FPGA + IO och sedan ha småkort med bara kamera + kanske motoriserad lins med bra montering för att veta exakt hur de sitter.
Säg att man kunde ha 3 kamera ingångar så skulle man kunna ha två för stereo 3D och en för optical flow i samma system.
Men det är lite framtida idéer jag har.
>> * Brukar man inte markera spänningsnivåerna på de olika bankerna så att man kan lätt kan se att man satt rätt spänningsnivåer på de kopplingar man gör.
Mycket bra rekommendation! Fixat!
>> * Jag tror inte du behöver en skärmad kabel för LVDS:arna. Det räcker med en flexkontakt bara den inte skall vara för lång. Men jag tycker du kan skippa den här funktionen helt. Min åsikt.
Har kollat mer på LVDS grejen och den bank jag har kvar stödjer bara 2.5V LVDS.
Pga detta så kommer jag skippa LVDS, vill inte dit med en till spänningsregulator osv.
>> * Du kan lägga JTAG:en på en mindre kontakt också om du vill, bara att göra en patchkabel från stiftlist till vilken du nu väljer.
Jo, det är klart, men det passar så bra med en Digilent JTAG som jag har nu - men funderar på att ha en mindre kontakt.
Det visade sig att jag behövde lite plats där jag satte JTAGen för DDRet. Så kanske byter till en ytmonterad ändå.
>> * Behövs ingen serieterminering på DDR2-minnen? Kan inte kolla hur vi har på våra designer för att jämföra förrän om några veckor, men du hade väl snott den designen rakt av från Avnet eller Xilinx eller nån annan så det skall väl vara fine.
Det behövs inte.

Xilinx FPGAn samt DDR2 minnet har ODT (on die termination) vilket gör att man bara behöver terminera klockan.
Men jag kopierade bara Digilents NEXYS4-DDR korts interface, sedan läste jag på mig om det.
>> * Grymt bra att ha FTDI-chippet där för debugning i början och om man vill köra applikationer på datorn som använder funktionen. Kanske finns parametrar som behöver ställas in i hur man vill att det skall fungera? Finns det utrymme i FLASH för settings? Väldigt bra för att kunna testa prestanda med.
Det va lite tanken att man kunde fixa med inställningar så, arbetar dock fortfarande på hur stort Flash som behövs.
I referensdesigner har de 128Mbit för 100T så tog samma själv, men hittar inte hur mycket av de som behövs. Det jag hittills hittat är vad som är max för Atrix-7 familjen som va lite över 200Mbit, men det är för den största.
>> * USART/SPI-kopplingen ser bra ut, men jag hade valt PicoBlade från Molex istället för de där JST-kontakterna. Hade satt samma på JTAG:en också. PicoBlade kan man krimpa själv även om det är väldigt litet. Men du kanske har JST-krimpverktyget så det är därför du väljer den?
Jag kollade på PicoBlade förut, men tog JST för att kontakten man stoppar i dom finns med kabel billigt på eBay.
Samt så kostar en JST hälften av en PicoBlade. Finns det några mekaniska fördelar med PicoBlade? Jag kan ju byta till den om jag vill.
>> * Är det tänkt att det skall gå att mata kortet från UART/SPI-kontakten? Det hade passat mig väldigt bra, men räcker strömmen till genom ett stift? Det är enda stället som +5V_CON går till, så jag antar att det är tänkt så.
Det är precis tanken.

Själv JSTn klarar 1A vilket jag tror ska räcka mer än väl, men vi får se vad designen säger när det börjar närma sig.
Jag hoppas att bara USB med sina 2.5W ska räcka. Dock svårt att veta innan allt är klart. Min spänningsdel klarar upp till 2A (10W) så kan uppgradera lite om det behövs.
>> * Servo-kontakten hade jag också skippat helt. Hur skall den ställas in? Det blir en jäkla massa kodande om allt skall vara inställbart med hur servosignalerna skall styras beroende på vad kameradatat ger ut. Det kommer sluta med att man ändå behöver ett nytt kort med en processor på som syr ihop allt.
Jo, jag har mer och mer kommit fram till samma slutsats.
Kommer sikta mer på att den kommer vara en renodlad sensor (därför jag inte har gyron eller sonar på den direkt) så får sedan en uC eller något fixa resten.
Andax:
LVDS delen ser ut som att den kommer falla bort, vill inte ha dit 2.5V på kortet också.

Dock så kan den fixa en 1.8V LVDS, så kollar på det också - men kan inte lova något.
Utöver detta så läste jag på mig lite om stereoskopisk 3D. Ett problem med att inte ha två kamera sensorer på ett kort kommer bli att veta exakt avstånd samt rotation mellan dessa.
Detta är extremt viktigt för detta. Så även om man kan koppla ihop två sensorer så skulle det nog vara praktiskt svårt att få det bra.
Jag har dock en liten plan för detta. Att göra ett centralt kort med FPGA + IO och sedan ha småkort med bara kamera + kanske motoriserad lins med bra montering för att veta exakt hur de sitter.
Säg att man kunde ha 3 kamera ingångar så skulle man kunna ha två för stereo 3D och en för optical flow i samma system.
Men det är lite framtida idéer jag har.

Re: Korkens Optical Flow sensor
Jag har inte använt JST-kontakten, men sätter PicoBlade på alla ställen där jag behöver en mindre kontakt. Använder den både för hobbyprojekten hemma och projekten på jobbet. Jag tycker den funkar så pass bra att jag köpte en tång hem också så att jag har en egen.
Det verkar som att PicoBlade är kompatibel med lite andra kontakter också, vi har kört med en kontakt från Würth tidigare, och de verkar passa bra ihop. Inte för att jag skulle blanda i någon produkt, men på labbgrejer om det krisar. Om nu inte någon drar fram en spec som säger att de verkligen är kompatibla...
Det verkar som att PicoBlade är kompatibel med lite andra kontakter också, vi har kört med en kontakt från Würth tidigare, och de verkar passa bra ihop. Inte för att jag skulle blanda i någon produkt, men på labbgrejer om det krisar. Om nu inte någon drar fram en spec som säger att de verkligen är kompatibla...
Re: Korkens Optical Flow sensor
JST är mer eller mindre standard inom rc/multirotor/uav världen idag. Jag tror nog att Emil tänkt sig att använda denna sensor tillsammans med någon befintlig flygkontroller med IMU 

Re: Korkens Optical Flow sensor
He he, nä, ok, du gör ju kortet för det så då skall du såklart använda den kontakten.
Re: Korkens Optical Flow sensor
Jag tror jag har en idé för Picoblade kontakten. Jag fixar så man kan montera båda, då kan man välja själv senare. 
Den va lagom större än JSTn så de kommer inte att inkräkta på varandras footprint.
EDIT:
Hoppsan, mätte fel...
Ytterpadarna krockar inte men benen gör det. Så blir bara en JST.

Den va lagom större än JSTn så de kommer inte att inkräkta på varandras footprint.
EDIT:
Hoppsan, mätte fel...
Ytterpadarna krockar inte men benen gör det. Så blir bara en JST.
Re: Korkens Optical Flow sensor
Jag har lite tråkiga nyheter... För ca 30 min sen så bestämde sig HDDn i min halvår nya laptop (Lenovo ThinkPad Yoga) att krascha. Så jag kan inte göra nå mer på detta förens jag är tillbaka i Luleå.
Tur nog så har jag allt backup-at i min Dropbox, så inget försvann iaf men hinner inte routa kortet innan jag kommer upp (vilket va planen).
Så blir fyra dagars ofrivillig paus i projektet nu...

Tur nog så har jag allt backup-at i min Dropbox, så inget försvann iaf men hinner inte routa kortet innan jag kommer upp (vilket va planen).
Så blir fyra dagars ofrivillig paus i projektet nu...
