[KiCAD] Numerowanie elementów po zmianach

Tutaj dzielimy się doświadczeniem z używania programu KiCAD.

Moderator: ZbeeGin

Awatar użytkownika
piotrek
Newb
Newb
Posty: 74
Rejestracja: niedziela 05 lis 2017, 02:46

[KiCAD] Numerowanie elementów po zmianach

Postautor: piotrek » środa 05 wrz 2018, 11:38

Zastanawiam się nad pewnym przypadkiem użycia KiCada. Po narysowaniu schematu, opracowaniu płytki, zmontowaniu prototypu zdarza się, że niektóre elementy można/trzeba usunąć lub też dodać. W związku z tym numeracja elementów na schemacie może się zmienić, tzn. numeracja nie jest ciągła lub zaburzony zostaje porządek numeracji na schemacie.
Czy są jakieś wzorce postępowania w takim przypadku?
Uruchomienie nowej numeracji wiąże się z koniecznością nowego mapowania elementów i footprintów, co może być błędogenne. Czy po prostu zostawia się numerację taką jaka jest?

Awatar użytkownika
inż.wielki
User
User
Posty: 249
Rejestracja: niedziela 20 gru 2015, 23:11

Re: [KiCAD] Numerowanie elementów po zmianach

Postautor: inż.wielki » środa 05 wrz 2018, 12:46

Najbezpieczniej jest chyba nadać nowemu elementowi nr taki jak miał stary

Awatar użytkownika
ZbeeGin
User
User
Posty: 259
Rejestracja: sobota 08 lip 2017, 17:16
Lokalizacja: GOP
Kontaktowanie:

Re: [KiCAD] Numerowanie elementów po zmianach

Postautor: ZbeeGin » środa 05 wrz 2018, 12:51

piotrek pisze:Czy są jakieś wzorce postępowania w takim przypadku?
Uruchomienie nowej numeracji wiąże się z koniecznością nowego mapowania elementów i footprintów, co może być błędogenne. Czy po prostu zostawia się numerację taką jaka jest?


Tak. Jeśli jesteś przekonany, że po ponownej numeracji masz zmiany w numeracji już wcześniej ponumerowanych elementów to przy ponownym imporcie listy sieci do PCB, w ustawieniach ładowania listy wybierasz "Znacznik czasowy" zamiast "Oznaczenie" w sekcji "Wybór footprintów".
Każdy element na schemacie oprócz oznaczenia, wartości i pól posiada ukryty parametr TimeStamp, gdzie jako 32-bitowa wartość jest zapisywany dokładny czas jego pierwszego umieszczenia na schemacie i ta wartość się już nie zmienia, i co więcej jest przenoszona na PCB.
Dzięki temu nawet jak całkowicie zmienisz numerację to program może poprawnie zinterpretować zmiany w elementach już istniejących.

Element na schemacie:
$Comp
L mylibrary:L L1
U 1 1 4EB040CF
P 12500 700
F 0 "L1" H 12500 650 40 0000 C CNN
F 1 "10uH" H 12500 780 40 0000 C CNN
F 2 "optimal:L4MM" H 12500 700 60 0001 C CNN
F 3 "" H 12500 700 60 0001 C CNN
1 12500 700
1 0 0 -1
$EndComp


Lista sieci:
(comp (ref L1)
(value 10uH)
(footprint optimal:L4MM)
(libsource (lib mylibrary) (part L) (description Inductor))
(sheetpath (names /) (tstamps /))
(tstamp 4EB040CF))


PCB:
(module optimal:L4MM (layer F.Cu) (tedit 518504C2) (tstamp 5B88C27D)
(at 79.4 153.8 90)
(tags "Axial Coil 4mm")
(path /4EB040CF)
(fp_text reference L1 (at 4.4 -0.9 180) (layer F.SilkS)
(effects (font (size 0.7 0.7) (thickness 0.15)))
)
(fp_text value 10uH (at 0 0 90) (layer F.SilkS) hide
(effects (font (size 0.7 0.7) (thickness 0.15)))
)(...)


Oczywiście nie dotyczy to sytuacji, gdy jakiś element usuniesz i wstawisz inny wykorzystując dziurę w numeracji. Wtedy odciski czasowe Ci nie pomogą i program na nowo wstawi poza płytką nowy footprint na PCB, "dublując" już istniejący. Ale to akurat dość łatwo wychwycić. Możesz też w takim przypadku kazać usunąć elementy jakie nie istnieją już na liście sieci, a dalej są na PCB.

Awatar użytkownika
ZbeeGin
User
User
Posty: 259
Rejestracja: sobota 08 lip 2017, 17:16
Lokalizacja: GOP
Kontaktowanie:

Re: [KiCAD] Numerowanie elementów po zmianach

Postautor: ZbeeGin » środa 05 wrz 2018, 12:52

inż.wielki pisze:Najbezpieczniej jest chyba nadać nowemu elementowi nr taki jak miał stary

I tak, i nie. Wszystko zależy od sytuacji.

Awatar użytkownika
piotrek
Newb
Newb
Posty: 74
Rejestracja: niedziela 05 lis 2017, 02:46

Re: [KiCAD] Numerowanie elementów po zmianach

Postautor: piotrek » czwartek 06 wrz 2018, 21:51

ZbeeGin pisze:
piotrek pisze:Czy są jakieś wzorce postępowania w takim przypadku?
Oczywiście nie dotyczy to sytuacji, gdy jakiś element usuniesz i wstawisz inny wykorzystując dziurę w numeracji. Wtedy odciski czasowe Ci nie pomogą i program na nowo wstawi poza płytką nowy footprint na PCB, "dublując" już istniejący. Ale to akurat dość łatwo wychwycić. Możesz też w takim przypadku kazać usunąć elementy jakie nie istnieją już na liście sieci, a dalej są na PCB.


Sposób z zaznaczeniem timestamp zadziałał tak jak chciałem, dokładnie o to mi chodziło.
Dodam od siebie, że podczas uruchamiania numeracji (KiCAD 4) na nowo trzeba zaznaczyć unikanie przestawiania części składowych danego elementu (np połówki podwójnego wzm operacyjnego - U1A, U1B), inaczej jest ryzyko że się poprzestawiają i na PCB powstaną błędy.
Wadą jest to, że restart numeracji jest nie do cofnięcia i trzeba z tym uważać.

ug1.png


Również za każdym razem trzeba uważać i pamiętać o zaznaczaniu timestamp podczas ładowania netlisty z poziomu PcbNew, bo domyślnie jest "Reference".

ug2.png
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.


Wróć do „KiCAD”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość