FPGA?
Moderator: Domotix-Moderators
FPGA?
Ik wil het volgende realiseren:
Mijn domoticasysteem is gebaseerd op I2C communicatie. Als IO gebruik ik PCF8574, een 8-bit IO expander. De uitgangen zijn programmatisch te plaatsen in Input of Output mode.
Daar mijn in-en outputs galvanisch gescheiden zijn, wil ik een volledige IO expander als input of als output gebruiken, geen mixing van de twee (omwille van de optocouplers).
De inputs zullen worden gebruikt voor detectie van drukknoppen en de outputs zullen worden gebruikt voor aansturen van leds, transistoren, ...
De bekabeling van het zwakstroomgedeelte gebeurd volledig in UTP. Via een UTP connector op de kabel en de print, worden beide met elkaar verbonden.
De UTP kabel kan komen van een groep schakelaars, dus allemaal inputs, maar ook van schakelaars in combinatie met, bijv., LED's.
Omwille van die reden, zullen op dezelfde RJ45 connector op het PCB, zowel in- als uitgangen kunnen worden gebruikt.
Ik heb geprobeerd dit schematisch voor te stellen op de volgende tekening:
Hier zie je rode en blauwe lijnen. De rode lijnen representeren inputs en de blauwe lijnen outputs (zie richting van de pijlen). De connectoren zijn niet noodzakelijk volledig 'gebruikt'. Vandaar dat niet elke connector 7 draden heeft die verbonden zijn met IO ingangen (de 8ste draad is gemeenschappelijke massa).
Je ziet heel snel dat eenzelfde connector (K1-K4) zowel in- als uitgangen kan hebben.
Omdat ik mijn print niet 'dedicated' wil maken, zoek ik een methode om verschillende inputs/outputs van verschillende RJ45 connectoren met verschillende inputs/outputs van de IO expanders (die dus of input of output zijn voor het volledige IC) te verbinden.
Daarbij had ik gedacht aan een simpele FPGA, of iets dergelijks. Heeft iemand ervaring met dergelijke componenten? Zijn die toereikend voor het doel dat ik voor ogen heb? Bestaan er betere alternatieven om te bereiken wat ik wil bereiken?
Graag reactie,
-- Geert
Mijn domoticasysteem is gebaseerd op I2C communicatie. Als IO gebruik ik PCF8574, een 8-bit IO expander. De uitgangen zijn programmatisch te plaatsen in Input of Output mode.
Daar mijn in-en outputs galvanisch gescheiden zijn, wil ik een volledige IO expander als input of als output gebruiken, geen mixing van de twee (omwille van de optocouplers).
De inputs zullen worden gebruikt voor detectie van drukknoppen en de outputs zullen worden gebruikt voor aansturen van leds, transistoren, ...
De bekabeling van het zwakstroomgedeelte gebeurd volledig in UTP. Via een UTP connector op de kabel en de print, worden beide met elkaar verbonden.
De UTP kabel kan komen van een groep schakelaars, dus allemaal inputs, maar ook van schakelaars in combinatie met, bijv., LED's.
Omwille van die reden, zullen op dezelfde RJ45 connector op het PCB, zowel in- als uitgangen kunnen worden gebruikt.
Ik heb geprobeerd dit schematisch voor te stellen op de volgende tekening:
Hier zie je rode en blauwe lijnen. De rode lijnen representeren inputs en de blauwe lijnen outputs (zie richting van de pijlen). De connectoren zijn niet noodzakelijk volledig 'gebruikt'. Vandaar dat niet elke connector 7 draden heeft die verbonden zijn met IO ingangen (de 8ste draad is gemeenschappelijke massa).
Je ziet heel snel dat eenzelfde connector (K1-K4) zowel in- als uitgangen kan hebben.
Omdat ik mijn print niet 'dedicated' wil maken, zoek ik een methode om verschillende inputs/outputs van verschillende RJ45 connectoren met verschillende inputs/outputs van de IO expanders (die dus of input of output zijn voor het volledige IC) te verbinden.
Daarbij had ik gedacht aan een simpele FPGA, of iets dergelijks. Heeft iemand ervaring met dergelijke componenten? Zijn die toereikend voor het doel dat ik voor ogen heb? Bestaan er betere alternatieven om te bereiken wat ik wil bereiken?
Graag reactie,
-- Geert
\" Minds are like parachutes, they only work when open \"
Als Xilinx ben ik moreel wel verplicht op deze vraag te antwoorde he
Dit is het grote voordeel van FPGA's, je kan hun I/O configureren via software. Je bepaald zelf welke pin als input of output moet dienen.
Nog een voordeel is dat FPGA's beschikbaar zijn met heel veel I/O.
Nadeel van FPGA's is dat ze niet al te goedkoop zijn en dat je wel wat moet kunnen programeren. Ik heb voor men eindwerk met een FPGA gewerkt, maar ondertussen zen er al enkele jaren voorbij en om eerlijk te zijn... het zit ver, heel ver.
Als het zich beperkt tot gewoon I/O mapping denk ik wel dat dit zal lukken, hou er wel rekening mee als je een PCB maakt dat die FPGA's
meestal mega veel poten hebben op een mega kleine pitch... misschien beter starten met een starterkit...
op de site van http://www.xilinx.com zal je wel nuttige info vinden.
Misschien is een cpld ook goed?
Dit is het grote voordeel van FPGA's, je kan hun I/O configureren via software. Je bepaald zelf welke pin als input of output moet dienen.
Nog een voordeel is dat FPGA's beschikbaar zijn met heel veel I/O.
Nadeel van FPGA's is dat ze niet al te goedkoop zijn en dat je wel wat moet kunnen programeren. Ik heb voor men eindwerk met een FPGA gewerkt, maar ondertussen zen er al enkele jaren voorbij en om eerlijk te zijn... het zit ver, heel ver.
Als het zich beperkt tot gewoon I/O mapping denk ik wel dat dit zal lukken, hou er wel rekening mee als je een PCB maakt dat die FPGA's
meestal mega veel poten hebben op een mega kleine pitch... misschien beter starten met een starterkit...
op de site van http://www.xilinx.com zal je wel nuttige info vinden.
Misschien is een cpld ook goed?
Re:
Hoi Xilinx,Xilinx wrote:Als Xilinx ben ik moreel wel verplicht op deze vraag te antwoorde he
Dit is het grote voordeel van FPGA's, je kan hun I/O configureren via software. Je bepaald zelf welke pin als input of output moet dienen.
Nog een voordeel is dat FPGA's beschikbaar zijn met heel veel I/O.
Nadeel van FPGA's is dat ze niet al te goedkoop zijn en dat je wel wat moet kunnen programeren. Ik heb voor men eindwerk met een FPGA gewerkt, maar ondertussen zen er al enkele jaren voorbij en om eerlijk te zijn... het zit ver, heel ver.
Als het zich beperkt tot gewoon I/O mapping denk ik wel dat dit zal lukken, hou er wel rekening mee als je een PCB maakt dat die FPGA's
meestal mega veel poten hebben op een mega kleine pitch... misschien beter starten met een starterkit...
op de site van http://www.xilinx.com zal je wel nuttige info vinden.
Misschien is een cpld ook goed?
FPGA's zijn inderdaad niet goedkoop. Voordeel is dat ik er maar een paar nodig heb...
FPGA's hebben inderdaad veel poten. Echter, een PLCC versie (max. 84 pins als ik me niet vergis), moet nog te doen zijn...
CPLD's zijn een mogelijke optie, alleen ken ik niet zo goed het verschil tussen beide (de simpelste oplossing is OK voor mij, hoor!).
Ik ga even 'sniffen' op de site van Xilink, misschien vind ik daar wat ik zoek.
Voor mij is het belangrijk dat dergelijk 'beest' kan gebruikt worden voor het doel dat ik schematisch heb voorgesteld.
-- Geert
\" Minds are like parachutes, they only work when open \"
- HomerJSimpson
- DomoMember
- Posts: 14
- Joined: Tue Jan 17, 2006 10:24 pm
- Location: Vossem
FPGA pakket
Geert, misschien is dit wel een interessant pakket:
http://www.xilinx.com/xlnx/xebiz/design ... R3-CPLD-DK
Het pakket bevat een bord met FPGA (120 I/Os) EN een bord met een CPLD (160 I/Os).
Let er wel op dat het bord met de FPGA een Ball Grid Array pinout heeft. Ik denk niet dat je deze kan vervangen moest hij het begeven...
Pakket kost 99 dollar + 30 dollar verzendingskosten. Ik denk niet dat je voor dat geld er zelf een kan maken
Heb het zelf enkele weken geleden besteld. Was op 3 dagen hier.
Voor de moment heb ik er nog niets mee aangevangen want ik heb eerst nog andere katten te geselen. Moet nog info zoeken over balansventilatie en dergelijke
Groetjes
Peter
http://www.xilinx.com/xlnx/xebiz/design ... R3-CPLD-DK
Het pakket bevat een bord met FPGA (120 I/Os) EN een bord met een CPLD (160 I/Os).
Let er wel op dat het bord met de FPGA een Ball Grid Array pinout heeft. Ik denk niet dat je deze kan vervangen moest hij het begeven...
Pakket kost 99 dollar + 30 dollar verzendingskosten. Ik denk niet dat je voor dat geld er zelf een kan maken
Heb het zelf enkele weken geleden besteld. Was op 3 dagen hier.
Voor de moment heb ik er nog niets mee aangevangen want ik heb eerst nog andere katten te geselen. Moet nog info zoeken over balansventilatie en dergelijke
Groetjes
Peter
Re: FPGA pakket
Hartelijk dank voor die info. Ziet er inderdaad iets interessants uit.HomerJSimpson wrote:http://www.xilinx.com/xlnx/xebiz/design ... R3-CPLD-DK
Het pakket bevat een bord met FPGA (120 I/Os) EN een bord met een CPLD (160 I/Os).
Ben ik zelfs van overtuigd. Een schema bedenken, simuleren, op papier zetten... dat gaat nog. Echter, in de praktijk brengen (PCB, componenten,...) is een ander paar mouwen...HomerJSimpson wrote:Ik denk niet dat je voor dat geld er zelf een kan maken
Zou ik dat gevoel ook niet ergens hebben???HomerJSimpson wrote:Voor de moment heb ik er nog niets mee aangevangen want ik heb eerst nog andere katten te geselen.
Best rgds,
--Geert
\" Minds are like parachutes, they only work when open \"
- HomerJSimpson
- DomoMember
- Posts: 14
- Joined: Tue Jan 17, 2006 10:24 pm
- Location: Vossem
Drivers
Ik ben aan het denken hoe ik de relais gestuurd krijg startende met 3.3V (uitgangen van de FPGA).
Het bord dat ik gebruik staat in de link van mijn vorig bericht...
Ik moet dus naar 12 of 24V (welk is het interessants naar toekomst toe?) liefst DC (is dit goed?) gaan en een stroom van minstens 100mA kunnen trekken. Had gedacht aan de schakeling die in de attachment staat. Misschien vervang ik de NPN transistor (onderste) door een optocoupler.
Als jullie betere ideeën hebben (en simpelere) mogen jullie ze altijd doorsturen...
Let wel, ik wil uiteindelijk een bord maken dat overbrugd kan worden zodat ik altijd kan overschakelen naar een standard teleruptorschakeling. Dus liever niet schakelen tussen de relais en grond maar tussen voeding en relais.
Wat zouden jullie doen voor de ingangen, dus 12/24V naar 3.3V. Simpele spanningsdeling of ook met optocouplers werken?
Peter
Het bord dat ik gebruik staat in de link van mijn vorig bericht...
Ik moet dus naar 12 of 24V (welk is het interessants naar toekomst toe?) liefst DC (is dit goed?) gaan en een stroom van minstens 100mA kunnen trekken. Had gedacht aan de schakeling die in de attachment staat. Misschien vervang ik de NPN transistor (onderste) door een optocoupler.
Als jullie betere ideeën hebben (en simpelere) mogen jullie ze altijd doorsturen...
Let wel, ik wil uiteindelijk een bord maken dat overbrugd kan worden zodat ik altijd kan overschakelen naar een standard teleruptorschakeling. Dus liever niet schakelen tussen de relais en grond maar tussen voeding en relais.
Wat zouden jullie doen voor de ingangen, dus 12/24V naar 3.3V. Simpele spanningsdeling of ook met optocouplers werken?
Peter
- Attachments
-
- FPGA outputs.PNG (6.61 KiB) Viewed 20178 times
Absoluut opto-couplers gebruiken !!!
Zo'n 3,3V logische inputs kunnen echt niet veel hebben, in theorie werkt een spanningsdeler, maar als er enkele kilometers in je buurt een onweder is dan heb je prijs.
Komt nog bij dat je met opto-couplers een stroom moet sturen (2...10mA) dat beperkt de kans op overspraak en dus valse aansturing van je inputs door het schakelen van relais, etc.
Als je kiest voor de opto-couplers, zowel voor ingang als uitgang, gebruik dan afzonderlijke voedingen voor de externe circuits en de interne logica, anders heeft het weinig zin. Verzorg de printlayout en bekabeling zodat je de 'vuile' signalen (=voor de opto-couplers) en de 'propere' strikt gescheiden houdt.
Rudi
Zo'n 3,3V logische inputs kunnen echt niet veel hebben, in theorie werkt een spanningsdeler, maar als er enkele kilometers in je buurt een onweder is dan heb je prijs.
Komt nog bij dat je met opto-couplers een stroom moet sturen (2...10mA) dat beperkt de kans op overspraak en dus valse aansturing van je inputs door het schakelen van relais, etc.
Als je kiest voor de opto-couplers, zowel voor ingang als uitgang, gebruik dan afzonderlijke voedingen voor de externe circuits en de interne logica, anders heeft het weinig zin. Verzorg de printlayout en bekabeling zodat je de 'vuile' signalen (=voor de opto-couplers) en de 'propere' strikt gescheiden houdt.
Rudi
- HomerJSimpson
- DomoMember
- Posts: 14
- Joined: Tue Jan 17, 2006 10:24 pm
- Location: Vossem
Ik denk dat ik er nog werk mee ga hebben. +- 70 optocouplers (+-40 ingangen, 30 uitgangen), een 30 transistoren en nog nen hoop weerstanden proper op een bord kwijt raken. Heb hier geen PCB programma liggen en ik wil er ni echt een kopen enkel voor dit project.
Farao, wat denk je van de sturing voor de relais? Goede opstelling, rekening houdende dat ik de onderste transistor zou vervangen door een opto-coupler?
Farao, wat denk je van de sturing voor de relais? Goede opstelling, rekening houdende dat ik de onderste transistor zou vervangen door een opto-coupler?
@Homer
Die uitgangskring is in orde, zou moeten werken mits de juiste transistoren en weerstandswaarden.
Heb je er al eens aan gedacht om driver-ic's te gebruiken ipv discrete transistoren, bijv. een UDN2987A van Allegro. Daar zitten ineens 8 kanalen in, compleet met beveiligingen tegen overbelasting etc.
http://www.allegromicro.com/sf/2987-6/index.asp
Het is maar een idee...
Farao
Die uitgangskring is in orde, zou moeten werken mits de juiste transistoren en weerstandswaarden.
Heb je er al eens aan gedacht om driver-ic's te gebruiken ipv discrete transistoren, bijv. een UDN2987A van Allegro. Daar zitten ineens 8 kanalen in, compleet met beveiligingen tegen overbelasting etc.
http://www.allegromicro.com/sf/2987-6/index.asp
Het is maar een idee...
Farao
- HomerJSimpson
- DomoMember
- Posts: 14
- Joined: Tue Jan 17, 2006 10:24 pm
- Location: Vossem
@Farao:
Bedankt! Ziet er inderdaad zeer interessant uit! Maakt de PCB direct pakken simpeler/kleiner.
Weet jij of het met deze drivers nog nodig is om de uitgangen van de FPGA te beveiligen tegen overspanningen/stroom? In de datasheet staat dat er een beveiliging insteekt maar dat is voor de uitgang van de driver chip zelf als ik me niet vergis.
Heb je enig idee waar ik ze kan kopen? Heb samples aangevraagd op hun site maar wil er toch enkele op reserve hebben...
Zijn er misschien ook IC's die ik kan gebruiken voor de ingangen?
Bedankt! Ziet er inderdaad zeer interessant uit! Maakt de PCB direct pakken simpeler/kleiner.
Weet jij of het met deze drivers nog nodig is om de uitgangen van de FPGA te beveiligen tegen overspanningen/stroom? In de datasheet staat dat er een beveiliging insteekt maar dat is voor de uitgang van de driver chip zelf als ik me niet vergis.
Heb je enig idee waar ik ze kan kopen? Heb samples aangevraagd op hun site maar wil er toch enkele op reserve hebben...
Zijn er misschien ook IC's die ik kan gebruiken voor de ingangen?
Gebruik van deze drivers, maak de opto-couplers nog niet overbodig, dus van FPGA naar opto-coupler en de uitgangen daarvan naar de driver.
Voor de ingangen: opto-couplers met serieweerstand als ingang en de andere kant aan de FPGA koppelen.
Ik weet niet zo direct waar ze te koop zijn in de kleinhandel, Rato elektronica misschien, maar da' s in Antwerpen.
www.rato.be
Rudi
Voor de ingangen: opto-couplers met serieweerstand als ingang en de andere kant aan de FPGA koppelen.
Ik weet niet zo direct waar ze te koop zijn in de kleinhandel, Rato elektronica misschien, maar da' s in Antwerpen.
www.rato.be
Rudi
Re:
Ik werk met eagle om PCB'kes te tekenen, er is een free versie beschikbaar maar die kan maximaal printjes tekenen van 8x10cm,HomerJSimpson wrote: Ik denk dat ik er nog werk mee ga hebben. +- 70 optocouplers (+-40 ingangen, 30 uitgangen), een 30 transistoren en nog nen hoop weerstanden proper op een bord kwijt raken. Heb hier geen PCB programma liggen en ik wil er ni echt een kopen enkel voor dit project.
misschien met wat zoeken op het net kan je een crack vinden voor de full versie. Simpel maar goed programma! http://www.cadsoftusa.com/
Voor de componenten, MB-tronics in Brussel of misschien Aitec in Leuven... of online shops, In Waver is er ook een klein winkeltje maar weet de naam niet meer....
Groetjes
Xilinx
- HomerJSimpson
- DomoMember
- Posts: 14
- Joined: Tue Jan 17, 2006 10:24 pm
- Location: Vossem