Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
DanielM
Inlägg: 2433
Blev medlem: 5 september 2019, 14:19:58

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av DanielM »

Oj, jag skrev fel. Det är 4 lager iallafall :)
Men så kul var det väll inte? Finns mycket roligare. Gabriel Iglesias t.ex.
ToPNoTCH
Inlägg: 5142
Blev medlem: 21 december 2009, 17:59:48

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av ToPNoTCH »

Det är om man skall vara noga:
GND
GND
3.3V
GND

Det finns problem med kortet. Jag slog bara en snabb flukt så det är inte "besiktigat" i den bemärkelse att det inte finns andra problem. Har inte ens kollat schemat.

- Flytta 3.3V till lager 2 och lager 2 till 3. Du lyfter upp matningar genom via och det finns ingen anledning att dra dessa genom jordplanet. De flesta tillverkarna som vi har råd med fixar inte "burried via" så hålen kommer bli där ändå, men det är dumt att dra matningen längre väg än nödvändigt och att föra strömmar igenom jordplanet.
- Vissa ledare är bredare än de paddar de ansluter till.
- Vissa ledare kommer inte centrerat ut ur padden. KiCAD fenomen, KiCAD vill oftast inte att man dra ledare från pinnarna då kan man få fenomenet. Dra dom till pinnarna istället och kolla så det blir rätt.
- Vissa komponenter är felplacerade. Även om schemat är rätt så måste du fatta vad dom är till för, det duger inte att se till att allt är kopplat. Man kan typ inte sätta alla avkopplingskondensatorer på rad i ena kanten av kortet.
- Vissa avstånd mellan ledare är jääävligt små. Även om man klarar tillverkarens tolerans så är det dumt. En del problem är helt onödiga och en följd av komponentplaceringen. Ex. U3-U5 flyttas till vänster och vips får du raka ledare till Q7-Q9 och slipper de snäva dragningen.
- Du "återanvänder" matningar på signalsidan. Plocka istället upp matningen genom via hela tiden, det blir alltid en kortare sträcka, och du slipper sträckor med strömpulser på signal lagret (Mixed lagret om man skall vara korrekt).
- Sen finns det några få grejor där jag inte fattar överhuvudtaget hur du tänkt. Ex kopplingen R53 -> U6 (Något försök till impedansanpassning på CAN ledarna ????), eller C2 (vrid 180 grader för tusan)
- Estetiskt så tycker jag det ser för djävligt ut när ledarna kommer ut ur hörnen, men det är kanske OCD.

Det där går lätt att trycka in på 2-lager eftersom du bara har en matningsspänning och så, men du gör rätt som kör 4 ändå. Dels har priset sjunkit rejält och det ger klart bättre signalegenskaper.
DanielM
Inlägg: 2433
Blev medlem: 5 september 2019, 14:19:58

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av DanielM »

Tack för granskningen. Det uppskattas!
- Flytta 3.3V till lager 2 och lager 2 till 3. Du lyfter upp matningar genom via och det finns ingen anledning att dra dessa genom jordplanet. De flesta tillverkarna som vi har råd med fixar inte "burried via" så hålen kommer bli där ändå, men det är dumt att dra matningen längre väg än nödvändigt och att föra strömmar igenom jordplanet.
Jag låter lagren vara till vidare. Förväntar mig att det kommer vara många som har olika åsikter kring detta.
- Vissa ledare är bredare än de paddar de ansluter till.
Fixat!
- Vissa ledare kommer inte centrerat ut ur padden. KiCAD fenomen, KiCAD vill oftast inte att man dra ledare från pinnarna då kan man få fenomenet. Dra dom till pinnarna istället och kolla så det blir rätt.
Har inte märkt något. Kan du peka?
- Vissa komponenter är felplacerade. Även om schemat är rätt så måste du fatta vad dom är till för, det duger inte att se till att allt är kopplat. Man kan typ inte sätta alla avkopplingskondensatorer på rad i ena kanten av kortet.
Får inte plats. Dessutom har jag fått tips från en väldigt kunnig person att man ska placera största kondensatorn längst ut och sedan använda mindre kondensator längst in närmast mot pinnen. Spänningen ska man koppla på den största kondensatorn.
- Du "återanvänder" matningar på signalsidan. Plocka istället upp matningen genom via hela tiden, det blir alltid en kortare sträcka, och du slipper sträckor med strömpulser på signal lagret (Mixed lagret om man skall vara korrekt).
Hur menar du? Jag plockar upp från vior hela tiden.
- Sen finns det några få grejor där jag inte fattar överhuvudtaget hur du tänkt. Ex kopplingen R53 -> U6 (Något försök till impedansanpassning på CAN ledarna ????), eller C2 (vrid 180 grader för tusan)
CAN är inte klart än. Men jag lägger upp senaste version så ser du hur jag har gjort. Notera att jag kommer lägga till TVS-dioder på alla digitala ingånger och encoder-ingångar så som E0, E1, F0, F1, F2.
STM32 PLC.zip
- Estetiskt så tycker jag det ser för djävligt ut när ledarna kommer ut ur hörnen, men det är kanske OCD.
Fixat! Nej, det är för att jag vill dra 90 grader hela tiden via vior.
Det där går lätt att trycka in på 2-lager eftersom du bara har en matningsspänning och så, men du gör rätt som kör 4 ändå. Dels har priset sjunkit rejält och det ger klart bättre signalegenskaper.
Jag har medvetet valt 4 lager för att minska på EMC.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
AndLi
Inlägg: 18247
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av AndLi »

Vill man inte öka EMC?
För mer kompatibilitet måste väl vara bättre? :D
ToPNoTCH
Inlägg: 5142
Blev medlem: 21 december 2009, 17:59:48

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av ToPNoTCH »

DanielM skrev: 7 mars 2021, 02:26:23 Tack för granskningen. Det uppskattas!
- Vissa ledare kommer inte centrerat ut ur padden. KiCAD fenomen, KiCAD vill oftast inte att man dra ledare från pinnarna då kan man få fenomenet. Dra dom till pinnarna istället och kolla så det blir rätt.
Har inte märkt något. Kan du peka?

PA3,PA8,CAN+,CAN-,PIN64 på MCU. Tror det var nån mer.

- Vissa komponenter är felplacerade. Även om schemat är rätt så måste du fatta vad dom är till för, det duger inte att se till att allt är kopplat. Man kan typ inte sätta alla avkopplingskondensatorer på rad i ena kanten av kortet.
Får inte plats. Dessutom har jag fått tips från en väldigt kunnig person att man ska placera största kondensatorn längst ut och sedan använda mindre kondensator längst in närmast mot pinnen. Spänningen ska man koppla på den största kondensatorn.

Jo men du har som exempel 4.7uF -> 100n -> 100n -> Matning MCU. På en annan matning 4.7 -> 100n -> 10n -> Matning MCU och en tredje 10n -> 1uF -> Matning MCU
Försök dra ihop avkopplingarna. Förutom att du får mer luft på kortet så blir funktionen bättre.
Jag får känslan av att du strikt vill ha in Silkscreen mellan komponenterna. Den är underordnad och bara till för dig när du monterar. Kan lika bra sitta på sidan. Sedan är KiCAD's default storlek aningen stor kan jag tycka. Brukar minska den.
Namnlös2.png
- Du "återanvänder" matningar på signalsidan. Plocka istället upp matningen genom via hela tiden, det blir alltid en kortare sträcka, och du slipper sträckor med strömpulser på signal lagret (Mixed lagret om man skall vara korrekt).
Hur menar du? Jag plockar upp från vior hela tiden.

Exempel: Kolla bilden och följ +3.3V. Du får in den på kortet på pinne 6 på kontakten, sedan har du systematiskt dragit ledare därifrån. Trots att du har spänningen på hela lager 3 och kan ta upp den genom vior på alla ställen du behöver den.
Jag tycker dessutom att du har avkopplingarna för långt från matningspinnarna.

Du får gärna förklara tanken med de dragningar som är inringade i blått. Kortet är fullt med helt onödiga sömningar på det sättet.
Som bonus. I princip alla transistorer kan vridas 90 grader så slipper du både ledare mellan pinnarna och jojja ner signalen på plan 4 i vänsterkanten.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
DanielM
Inlägg: 2433
Blev medlem: 5 september 2019, 14:19:58

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av DanielM »

AndLi skrev: 7 mars 2021, 08:54:28 Vill man inte öka EMC?
För mer kompatibilitet måste väl vara bättre? :D
EMC vill man ju minska. Det är ju störningar. ESD är blixtar och dunder :wink:
ToPNoTCH skrev: 7 mars 2021, 10:10:48 PA3,PA8,CAN+,CAN-,PIN64 på MCU. Tror det var nån mer.
Inte på MCU. Men på CAN finns det. Jag kan inte göra något bättre än detta.
2021-03-07_12-19.png

Jo men du har som exempel 4.7uF -> 100n -> 100n -> Matning MCU. På en annan matning 4.7 -> 100n -> 10n -> Matning MCU och en tredje 10n -> 1uF -> Matning MCU
Försök dra ihop avkopplingarna. Förutom att du får mer luft på kortet så blir funktionen bättre.
Jag får känslan av att du strikt vill ha in Silkscreen mellan komponenterna. Den är underordnad och bara till för dig när du monterar. Kan lika bra sitta på sidan. Sedan är KiCAD's default storlek aningen stor kan jag tycka. Brukar minska den.
Jag har fått tipset att applicera Vcc -> 4.7uF -> 100n -> 100n -> Matning uC.Tack för att noterade 10n -> 1uF -> Matning MCU. Det ska vara 1uF -> 10nF -> Matning uC.

Ja! Jag vill se numrerna mellan komponenterna. Detta underlätta för mig. Sedan anser jag att det är bra med ett litet avstånd. Sådant skadar inte :)

Exempel: Kolla bilden och följ +3.3V. Du får in den på kortet på pinne 6 på kontakten, sedan har du systematiskt dragit ledare därifrån. Trots att du har spänningen på hela lager 3 och kan ta upp den genom vior på alla ställen du behöver den.
Jag tycker dessutom att du har avkopplingarna för långt från matningspinnarna.
Jag ser nu! Du har rätt. Jag tog bort lite +3.3v för dom sitter ändå ihop i ett gemensamt plan. Nu blir det bättre.
3 mm, är det långt ifrån?

Du får gärna förklara tanken med de dragningar som är inringade i blått. Kortet är fullt med helt onödiga sömningar på det sättet.
Som bonus. I princip alla transistorer kan vridas 90 grader så slipper du både ledare mellan pinnarna och jojja ner signalen på plan 4 i vänsterkanten.
Orsaken har med att jag vill dra efter specifika regler. Rött ska vara vertikalt. Grönt ska vara horisontellt.
Jag har vridigt på de SOT-23 paketen som har en ledare mellan pinnarna.

Angånde NRST så är dom kopplade ihop med båda uC's NRST. Så när jag trycker på knappen så nollställs båda uC.

En nyfiken fråga!
Jag har ju zener 3.6V som ska reglera mot högre spänning.
En zener är inte bra om man får transienter, strömspikar.
Ett förslag är att använda TVS-dioder, men jag får inte plats.

Då tänkte jag om jag ersätter zener 3.6V mot TVS-dioder som öppnar vid 3.6V och uppåt? Vad tros om detta? Är detta dåligt sätt, eller bra sätt?
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Senast redigerad av DanielM 7 mars 2021, 13:25:34, redigerad totalt 1 gång.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46929
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av TomasL »

EMC vill man ju minska.
Du har fortfarande inte fattat vad EMC är, EMC vill man öka.
Dvs
Man vill öka den ElektroMagnetiskaCompabiliteten (med lite Engelsk stavning, för att förkortningen skall stämma) EMK är något helt annat.
Dvs man vill göra produkten mer motståndskraftig mot externa störningar, samtidigt som man vill minska de störningar produkten avger.

Så man vill ÖKA EMC.
Användarvisningsbild
säter
Inlägg: 35216
Blev medlem: 22 februari 2009, 21:16:35
Ort: Säter

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av säter »

EMC vill man ju minska. Det är ju störningar. ESD är blixtar och dunder
Du som kan det här, du kanske kan förklara sambandet mellan EMC och ESD?
DanielM
Inlägg: 2433
Blev medlem: 5 september 2019, 14:19:58

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av DanielM »

TomasL skrev: 7 mars 2021, 13:24:25
EMC vill man ju minska.
Du har fortfarande inte fattat vad EMC är, EMC vill man öka.
Dvs
Man vill öka den ElektroMagnetiskaCompabiliteten (med lite Engelsk stavning, för att förkortningen skall stämma) EMK är något helt annat.
Dvs man vill göra produkten mer motståndskraftig mot externa störningar, samtidigt som man vill minska de störningar produkten avger.

Så man vill ÖKA EMC.
Okej. Tack! Då vet jag det.
säter skrev: 7 mars 2021, 13:25:21 Du som kan det här, du kanske kan förklara sambandet mellan EMC och ESD?
Nu har tomas avslöjat lite. Men EMC är skyddet och ESD är strömspikar. Nu kommer jag troligtvis få fel på detta också för vi pratar om ord och beteckningar.
ToPNoTCH
Inlägg: 5142
Blev medlem: 21 december 2009, 17:59:48

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av ToPNoTCH »

EMC är ju precis som Tomas sagt (minst 2 ggr) motståndskraften för störningar. EMC är BRA.

ESD är Elektrostatisk urladdning sådant man skall skydda sin produkt ifrån för att skadas av. ESD är dåligt.
Exempel : Knatar du runt på heltäckningsmatta så brukar det ge upphov till stötar när du tar i saker. En form av ESD.
ToPNoTCH
Inlägg: 5142
Blev medlem: 21 december 2009, 17:59:48

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av ToPNoTCH »

DanielM skrev: 7 mars 2021, 13:12:01 Orsaken har med att jag vill dra efter specifika regler. Rött ska vara vertikalt. Grönt ska vara horisontellt.
Jag har vridigt på de SOT-23 paketen som har en ledare mellan pinnarna.
Vem har hittat på den regeln, och har du själv reflekterat över varför den regeln i så fall finns ?
ToPNoTCH
Inlägg: 5142
Blev medlem: 21 december 2009, 17:59:48

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av ToPNoTCH »

Och bara på min lilla bild ser jag två vertikala gröna så regeln verkar bara finnas ibland :humm:
DanielM
Inlägg: 2433
Blev medlem: 5 september 2019, 14:19:58

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av DanielM »

Det känner jag till. Kan vara flera hundra volt det pratas om. Men för att skydda emot detta så kan en TVS-diod användas. Men kan en sådan ersätta en zener? Detta är något som vilar på praktisk erfarenhet.

TomasL gav ett förslag till mig att håll denna regel för den är bra. Jag måste säga att TomasL fick inte bara rätt, utan väldigt rätt. Det blev mycket lättare att dra linjer om man bestämde sig för att en viss typ av färg var horisontell och en annan signal var vertikal. Istället för att blanda och då blir allt bara som ett trassel.

Men jag har även hört detta förslag från ingenjörer på Cargotec.

Jag har gjort lite få undantag dock :wink:
Användarvisningsbild
Klas-Kenny
Inlägg: 11830
Blev medlem: 17 maj 2010, 19:06:14
Ort: Växjö/Alvesta

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av Klas-Kenny »

Kallas "X/Y routing" att köra en riktning på ena sidan av kortet, och en annan riktning på andra sidan.

Det är en "regel" som underlättar ritandet väldigt mycket. Likaså har det elektriska fördelar när det kommer till tvålagerskort.
Men, man behöver inte överdriva saken. Här och var kan man gå ifrån det om det passar, det ser man allt eftersom man ritar.
Likaså kan man lägga en liten stund på att gå över designen när man är färdig och kolla över om det finns ledare som kan dras enklare, med färre vior. Jag ser ganska många sådana bara vid en snabb koll på Daniels layout. :)
DanielM
Inlägg: 2433
Blev medlem: 5 september 2019, 14:19:58

Re: Förslag på PWM, ADC, I/O och DAC IC kretsar med SPI?

Inlägg av DanielM »

Tror jag är nöjd som det är. Just nu är det bara ESD skydd som jag vill impelmentera. :)

Sedan funderar jag på skicka detta till produktion där dom löder även kortet åt mig. Iallafall kondensatorerna samt de vanliga komponenterna. Processor samt vissa chip kan jag löda själv.

Edit:
Jag sökte lite i databladet och hittade att det finns redan ett visst skydd mot ESD.
2021-03-07_15-18.png
Edit 2:
Nu är jag nöjd med kortet.
Till er som undrar vad jag håller på med så kan jag berätta en liten kortfattad historia.
Detta kort är ett styr- och mätkort. Man ska både styra och mäta med kortet. Men kortet ska även fungera som en kontroller som man kan programmera.

Kortet har följande:

LCD anslutning på SPI1 = Hög SPI linan. Och den har SD-kort anslutning samt touch-anslutning på SPI2 = Låg SPI linan.
2021-03-02_22-29.png
Den har USB anslutning om man vill ansluta mot ett externt program som jag har byggt. Detta program är till för databasadministration.
2021-03-07_16-31.png
Den har 8 stycken PWM styrning med PTC motstånd som strömskydd.
2021-03-07_16-33.png
Den har 4 stycken 12-bit 0-20mA ingång, 4 stycken 16-bit 0-20mA ingång. 2 stycken 16-bit 0-20mA differential.
2021-03-07_16-34.png
Den har även 3 stycken 0-20mA styrning. Jag visste inte att en DAC 0-20mA är till för att reglera strömmen. Trodde en DAC 0-20mA skickade ut ström.
2021-03-07_16-35.png
Den har 8 stycken digitala ingångar också. Dessa går direkt till en liten STM32 som talar med en större STM32. Jag använder alltså en liten STM32 som en IO-expanderare.
Notera att det är samma konstruktion på frekvensingångarna och encoder-ingången. 2 stycken encoder. 3 stycken frekvens.
2021-03-07_16-36.png
Orsaken varför jag har valt en STM32 som IO-expanderare har först och främst med priset. Men även att jag kan styra LCD ljuset. På LCD:n så finns det en touch-kontroller. När man tar på LCD:n så blir T_IRQ låg och då ska LED_ON vara hög så LED(som är en pinne till LCD:n baklyse) skicka ut ström till LCD:n under en viss tid och därmed slockna.
2021-03-07_16-38.png
Övrigt så är NRST på de båda STM32:erna kopplad tillsammans.

Vi får inte glömma bort CAN. Här har jag petat in lite kondensatorer som ska filtrera bort lite brus. Kondensatorerna är satta nära TCAN332. C36 är placerad nära uC. Här har jag valt 120 Ohm resistor mellan CANL och CANH för att det ska uppfylla en standard.
2021-03-07_16-40.png
Batteriet är kopplat till VBAT så RTC:n körs i bakgrunden om strömmen går.

Sammanfattning:
  • 8 Digitala ingångar
  • 3 Frekvensingångar
  • 2 Encoderingångar
  • 8 PWM
  • LCD
  • Touch
  • SD-kort
  • Tidsstyrt baklyse på LCD
  • RTC
  • 4 stycken 0-20mA på 12-bit
  • 4 stycken 0-20mA på 16-bit
  • 2 stycken 0-20mA på 16-bit differential
  • 3 stycken 0-20mA DAC på 12-bit
  • USB anslutning för att kunna tala med externa program som kopplas direkt mot en databas
Tanken med detta projekt är att det ska vara 100% öppen källkod och det ska vara mätutrustning, loggutrustning och styrutrustning. Jag jobbar på en firma som håller på med massa liknande saker och jag har blivit rätt trött på alla dessa överpriser och säljare, speciellt säljare som har i uppgift att bara sälja. Dessutom är jag en stark stödjare av öppen källkod :)
STM32 PLC.zip
2021-03-07_16-51.png
Gått igenom och allt ser bra ut!
Check Test.png
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Skriv svar