Skip to content

기글하드웨어기글하드웨어

커뮤니티 게시판 : 아주 기본적인 네티켓만 지킨다면 자유롭게 쓸 수 있는 커뮤니티 게시판입니다. 포럼에서 다루는 주제는 각각의 포럼 게시판을 우선 이용해 주시고, 민감한 소재는 비공개 게시판이나 수상한 게시판에, 홍보는 홍보/외부 사용기 게시판에 써 주세요. 질문은 포럼 게시판의 질문/토론 카테고리를 사용해 주세요.

Kicad는 오픈소스 EDA프로그램입니다. 제가 Eagle을 사용해본적은 없지만 최근에 Kicad에서도 대놓고 Eagle과 비교하는 하는 모습이 보입니다. 이러한 점을 미뤄볼때에 취미나 이미 여러 EDA를 알고있으며 파이선 스크립트/ 소프트웨어 개발에 가까운 분들에게는 충분히 좋은 소프트웨어인 것 같습니다. 그리고 제가 가장 좋아하는 점은 윈도/맥/리눅스 다된다는 점 ㅎㅎ...

 

PCB개발이란 참 재밌습니다. 

PCB는 단순히 아두이노나 모듈을 연결하는 형태에서 더욱 많은 형태로 형상시킬수 있는 좋은 것이며.

사실 아두이노/모듈과 같은 개발 형태의 이전부터 존재하던 STUFF, 것입니다. 

저도 사실 하드웨어에 관심만 많았지만 중학교때 UMPC를 접하고 나서 

"야 공군은 PMP가 되는데, 공군가서도 노트북을 쓸려면 PMP하우징에 UMPC를 심어서 가면 되잖아!

이거이거 하드웨어를 공부해야겠군"

이라는 생각으로 처음에는 MCU를 공부하다가 대학교에 컴공으로 들어가고 나서 하라는 공부는 안하고

회로를 공부했습니다. 그런데 아직까지도 재밌네요. 여러분들한테도 추천드립니다. (??)

중학교때는 공군가서 UMPC써야지 했지만.

현실은 육군으로? 그리고 UMPC고민같은거 없이 아이맥도 ,,, 인두기,,, 디버거를 제공하는 부대/보직으로 갔습니다. 

사람일은 어떻게 될지 모르는겁니다.

 

 

 

 

 

PCB는 대개 3가지+이외 여러가지 결과물 로서 나눠서 개발된다고 설명할 수 있습니다.

 

* Library [Scheamtic Library(회로도상의 심볼), Footprint Library(PCB상에서의 캐드 심볼)

* Schematic (회로도/Diagram)

* PCB (Footprint가 실제로 올라가는 캐드데이터)

+

그리고 추가적인 것들은 (추가적으로 말하지만 나중에 가면 필수가 되는 놈들)

이외 Design Rule을 위한 데이터

PCB 계층을 위한 데이터

BOM/Pick And Place 및 거버 데이터 출력을 위한 설정 혹은 Script

개발자가 어느정도 자동화를 하기위한 Script

 

Kicad에서는 이 작업을 위해서 약 4개의 프로그램으로 나뉩니다.

Symbol Editor

Footprint Editor

Eschema : 회로도 작성

PCBnew : 캐드 작성(라우팅)

 

Altium같은 경우 Library쪽 관리/배포 추가시스템을 제외하고는 모드 Altium에 통합했으며

한국 표준!인 Orcad는 Kicad처럼 따로 부르고있습니다.

 

자 이제 본론입니다. 

Kicad는 다른 소프트웨어랑 비교해서 어떨까.

 

땡, 아쉽게도 일단 단점 위주로 쓰겠습니다.


Eschema : 회로도 작성

주석 2020-06-13 194647.png

 

1. Route된 선들이 알아서 잘 늘려지거나 뭔가 유도리가 없다.

2. 너무 GRID에 의존한다.
3. footprint선택할때 footprint를 키워드로 검색은 안된다.
4. Smart Paste기능이 필요함.

 

footprint는 매우 많습니다. 예... Symbol에 관해서 Footprint First Priority에 대한 Filtering 룰을 설정할 수 있으나.

적용이 안될때도 있더군요. 또한 Kicad는 저항 하나하나 모델명에 따라 분리해서 라이브러리를 지정하기 보다는 대략적으로 큰 심볼을 지정하고 그걸 나중에 footprint를 지정하는 형태로 많이 작업됩니다.  물론 이건 선택이나 제가 사용할때는 그렇게 되는 것 같습니다. Altium의 경우 Altium Vault시스템을 이용해서 결국에는 따로따로 관리되나 Kicad는 아닙니다. 가장 큰 예시로는 인덕터입니다. 인덕터는 저항과 다르게 매우 많은 종류의 footprint를 가지고 있기 때문입니다.

그런데 불구하고 진짜 단순히 검색이 안된다는것은 매우 불친절 한게 아닐까 라는 생각을 갖고있습니다.

 

Smart Paste란 노트패드에다가 csv나 단순히 한줄띄는 식으로

"PIO1 /n PIO2 /n PIO3 ... PIO31" 이런식으로 적혀있으면 이걸

Net Label 혹은 Net Label + Wire, Net Label + Wire + Port 등등으로 알아서 붙이거나 이를 선택하도록 사용자에게 편의성을 제공하는겁니다. 파이선 스크립트로 충분히 가능하니. 이에 대해서는 조금 부족하다는 생각이 들었습니다.

 

 

PCBNew : 캐드 작성

1. shortcut제공을 100퍼 안함. pcbnew에서 component들을 Align시키는 단축키를 엄청많이 쓰는데 없어서힘듬
2. 각 레이어에 대한 Component, Polygon, Region, Track, Via, Text에 대한 Object필터링 선택 및 snap여부 에 대한 필터 완전 미제공, Show되는 것에대해서 레이어단위로만 제공하고 이마저도 미숙함.
따로 스크립팅되면 이에 관해서만 플러그인화 해도 진짜 향상될듯.
2.5 Show하는 것과 Select하는 것에 대한 필터링이 너무 빈약 또한 Opacity를 줄수가없음
3. 부드러운 zoom안됨.

 

zoom은 생각보다 화가 나지만. 뭐.... 일단 무시하고 중요한 

2, 2.5에 대해 설명하겠습니다.

주석 2020-06-13 195016.png

[귀찮아서 Fingerprint 에디터 이미지를 첨부]

우측에 보듯이 Fingerprint와 PCB는 여러가지 레이어로 나뉩니다.

여기서 가려진 오브젝트도 있지만 여러가지 레이어가 있다는데에 문제가 생깁니다.

원하는대로 선택하거나 보는것이 안되는겁니다.

사실 레이어 단위로 보면 보는걸 제한할 수 있는데. 문제는 object가 Line, Text, Component, Pad, Polygon, Region, 3D Component(Kicad구조상 3D Component는 완전 분리되어있음), 등등으로 나뉩니다.

저는 텍스트를 선택하기를 원치 않은데 이게 선택이 될수도있고 파워전원부 그라운드 코퍼만 수정하길 원하는데 안될 때도 있습니다. 되긴하지만 선택이 불편.

 

심볼/풋프린트 라이브러리 에디터

1. Auto Generation이 외부 플러그인에 의존해야함.
2. Density High,Middle,Low에 대한 Auto generation불가능
3. Footprint Wizard에서 Pad, Paste, Mask에 대한 커스텀이 안됨, 풋프린트 에디어테서 수정하는 것보다 그냥 vscode로 수정하는게 더 빠름. 이게 Kicad고질적인 Selection이 너무 불편하다는 문제랑 겹쳐져서 매우 힘듬
4. Footprint Wizard에서 3d모델링은 자동형성해주지 않음.
5. 심볼만들때에 엑셀이나 csv에서 바로 땡겨오고싶은데 되지않음. 플러그인이 존재하나 이정도는 그냥 자동 제공 해주는게 어떨까 싶음
6. 심볼 내 핀의 텍스트 속성 커스텀이 안됨.
7. 3D 모델링을 삽입할때에 Environment Variables 로 넣어야하는데. 문제는 프로젝트나 각각의 개별 풋프린트에서 어떻게 이를 처리해야할지 난감해짐.

8. Alias된 파츠에 대해서 수정가능한 파라미터가 제한됨.

 

너무 불만을 제가 많이 적었는데 설계상으로 가장 큰문제가 있다는 부분은  7,8이라고 생각합니다.

7번은 궁극적으로 Vault서버 처럼 라이브러리를 프로젝트나 전역으로 종속시키지않고

git submodule처럼 외부 레포지터리에서 import해서 사용할때 매우 불편합니다.

(현재 https://github.com/pmnxis/Lambda_KICAD5_LIB 이와같이 진행을 시도해보고 있습니다.)

왜 이렇게 해야하는가...라 말하면. 프로젝트 관리/생성/배포/협업 할때에 라이브러리때문에 에러문을 보면서 많이 느끼실겁니다.

이러한 시도에 있어서 Schlib, footprint lib은 문제가 안되나 3d component를 해당 라이브러리가 있는 곳에서 경로 참조해서 써야하는데 그게 안되서 git submodule처럼 사용시에 로드를 못하는 문제점이 있습니다.

임시 해결방법으로는 환경변수를 키캐드에서 추가로 설정하는 방법이 있으나 경로가 Fixed되버리는 문제점이 있습니다.

 

8번은 전자부품은 어쩌다보니 비슷한게 많습니다. Value(저항값, 모델명)만 다르다든지 제조사만 다르다든지... Revision만 다르다든지.. 

주석 2020-06-13 200834.png

좌측에 있는 부품들이 다 alias입니다. 다 비슷합니다. (Gate Protection 심볼이 추가되거나.. 그런여부까지 같냐? 라고 하면 모르겟습니다.)

그런데 문제는 사용자마다 Manufactor이라는 추가적인 파라미터속성을 주길 원할수도있고, 

진짜 트랜지스터의 전압이나 허용전류(1-3 , 2-3, 2-1 간 허용되는 전압차 등등) 이외에도 여러 파라미터가 매우많습니다.

이러한 파라미터를 따로 alias가 독립적으로 같길 원해도 이에대한게 되지않습니다.

기본 파라미터만 적용이됩니다.

결국에는 이를 적용하기위해서는 alias가 아닌 그냥 심볼을 복제(Duplicate)해서 따로 만듭니다. 

 

그런데 단점만 있을까?

https://gitlab.com/kicad/code/kicad/-/wikis/KiCad-6.0-Roadmap

아닙니다.. 언젠가 새로 나올 버젼에서는 많이 개선될 예정입니다.

해당 링크를 레퍼런스해서 말하자면 제가 집중적으로 조명을 비췄던 부분에 대해서 어느정도 개선이 있을 예정이며

특히 라우팅은

Slection Filtering 및 Visible Upgrade가 예정되어있습니다.

이는 제가 불만했던 선택과 보기에 대한 필터링에 대한 개선에 해당됩니다.

 

그리고 대부분의 문제점들은 Scripting을 통해서 해결할 수 있습니다.

 

https://github.com/pointhi/kicad-footprint-generator

 

footprint를 제너레이트 해주는 파이선 스크립트 입니다.

 

주석 2020-06-13 201607.png

일반적인 부품은 별 상관없으나. 현재 사용 시도중인데 가장 기대되는것은 커넥터 쪽입니다.

최근에 만든 Push-In 터미널 커넥터 라이브러리 입니다만 저는 이걸 2핀부터 8핀모델까지 손으로 하나하나 만들었습니다. 이외에도 커넥터 5종류를 2핀부터 15핀까지 만들어야하는데.. 이거 손으로 하면 좀 짜증납니다.

그런데 스크립트 기능이 여기서 발휘합니다.

 

그냥 스크립트로 자동화하면 되거든요.

 

여기서 알티엄이랑 살짝 비교해보겠습니다. 알티엄도 스크립트를 지원합니다. 알티엄이 C#이나 다른 언어도 지원하는걸로 아나 우선 메인은 Pascal Script인것으로 알고있습니다.

 

현재는 어떤지 모르겠으나 우선 altium의 Pascal Script는 알티엄 내장의 Pascal Script을 위한 엔진?모듈?이 사용자의 스크립트와 본프로그램이 통신을 하면서 사용합니다.

 

여기서 어떠한 구조로 문제가 발생하는지는 잘모르겠으나 명령이 애매하게 좀 되는 경우 매우 느립니다.

 

그런데 Kicad는 Kicad본 프로그램과 스크립트가 따로 도는 것을 허용하기에 library만들때 빠른 실행이 가능합니다.

물론 바로 못보는 문제가 발생할 수 있으나 본프로그램과 소통하며 같이 돌아가는 형태에서도 충분히 빠르게 돌아갑니다.

 

KiCAD 6을 기대하면서 그리고 ...

Kicad v6는 분명히 많이 개선 될것입니다.

그리고 처음에 하드웨어개발을 추천을 처음에 소프트웨어쪽 혹은 매니아분들에게 추천하는 형태로 했으나.

좀더 궁극적으로 마지막에 말하고싶은건 하드웨어 개발자분들도 Script를 잘이용해서 할수있는걸 늘려가자 입니다.

알티엄은 워낙 잘되어있어서 스크립트..를 안써도 되지만 당장에 Kicad는 script만 잘쓰고 앞으로 더욱더 개선될 버젼을 응용한다면 앞으로 있을 상용 프로그램들을 곧 따라잡지 않을까 기대하는중입니다. 물론 그때가 되어도 결국 script에 의존할것이다 라는 것은 부정하지 못할 것같습니다만....

 

어쩌다보니 좀 두서없이 길어졌습니다. 읽어주셔서 감사합니다.

 

 

글이 많이 지루하니 저희 회사 사장님의 자태를 첨부합니다.

사실 이 지루한 글은 저희 회사 사장님의 자태를 보기전 제공하는 지루한 약관입니다.

resized5_SAM_0056.jpg

resizedScopeCat_0039.jpg

Lambda.jpg

 



  • profile
    설아      ShellCat ː 雪雅 - 1st shell 2020.06.13 20:34
    고양이 품종이 뭔가요?
    털 모양이 인상적이네요
  • profile
    pmnxis 2020.06.13 20:35
    아메리칸 컬입니다. 아메리칸이라 mm가 아닌 mil을 사용하는 깜찍한 악마입니다.
  • profile
    유우나      7460 2020.06.13 21:00
    공ㅉr라는데서는 좋긴한데 그냥 어디서 상용툴 얻어오면 안되나 생각이 드는 하루인 감사합니다. 으악입니다. ㅠㅠ
  • profile
    pmnxis 2020.06.13 21:04
    일단은 이글은 주제가 Kicad라 돈벌어서 그냥 "댁에 orcad나 altium놔드려야겟어요"라는 말은 안했으나 이게 정답이긴합니다. 우선 한국 표준이 orcad/pads 기도하고 요즘 뉴 라이즈로서 altium이 너무 갓인것같네요.
  • profile
    pmnxis 2020.06.13 21:04
    그런데 아시다싶이... 가격이.........
  • profile
    title: 민트초코미쿠미쿠 2020.06.13 21:11
    람다 귀여워영! 위에 문제점 대다수와 UX면에서 EasyEDA가 나은 부분이 많아서 웹기반에 EasyEDA로 정착해버렸지요
  • profile
    pmnxis 2020.06.13 21:42
    easyeda인정합니다. 군대 사지방에서 덕분에 많은 공부를 할 수 있게끔 해준 물건이라 꽤 정감이 갑니다. 저도 EasyEDA 2년전까지 간간히 썻지만. 제공하는 기능은 적지만 꽤 높은 완성도를 제공합니다. 스크립팅이 공식으로 지원되지않지만 이전에 제공되는 java프로그램을 통해 auto router를 제공하던걸 생각하면 아무래도 스크립팅이 차후에 되지않을까 싶네요.

    한가지 아쉬운건 libary가 강제로 Public으로 오픈되었던것 같은데. 이게 양날의 칼인 것같아요. 라이브러리를 많이 쓸수잇지만 단점은 그걸 원하지않은데 공개되거나... 질낮은 라이브러리가 많다거나.... << 이게 좀
  • profile
    title: 민트초코미쿠미쿠 2020.06.13 21:44
    기능이 별로 없는거랑 질낮은 라이브러리 걸러야 하는게 단점이긴 합니다. 만든 라이브러리를 내 workspace에 국한시킬 수도 있긴하더군요!
  • profile
    pmnxis 2020.06.13 21:58
    아 국한이 됬엇군요. 전 왜 무조건 퍼블릭으로 알고있는지 .... 그래도 다행입니다. 그런데 라이브러리라는건, 따로 유상으로 솔루션으로서 제공받는게 아니면 작업자/그룹에서 직접 다 만드는게 확실한 것 같습니다. 옛날에는 찾아가면서 했는데... 지금은 3d모델링 빼고는 그냥 다시 만들고, 설령 찾더라도 매우 특이한것들 참조만 하는정도?

작성된지 4주일이 지난 글에는 새 코멘트를 달 수 없습니다.


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
81528 잡담 제미나이는 정말로 근본없는 표현입니다 16 file babozone 2024.02.04 870
81527 잡담 요즘 환경문제로 이것저것 규제하던데 이것도 좀.... 21 뚜까뚜까 2024.02.03 743
81526 방구차 안녕하세요.. 저는 빨갱이 입니다. 4 file 뚜찌`zXie 2024.02.03 448
81525 잡담 사~요~나~라~! 3 file Marigold 2024.02.03 420
81524 잡담 게임 잘 안하는데요.. 7 file 강제 2024.02.03 404
81523 잡담 g304 마우스 버튼 교체 했습니다 도와주신 분들 ... 3 dmy01 2024.02.03 405
81522 잡담 석탄가루와 미세먼지 배기가스 없는 산사탕후루 12 file 뚜찌`zXie 2024.02.03 724
81521 잡담 집 근처 무인매장에 파는 것 7 file title: 부장님유니 2024.02.03 703
81520 잡담 잘못 배웠나... 8 file title: AI아무개 2024.02.03 580
81519 잡담 미쳐버린 팰월드 서버 .. 14 file title: 가난한카토메구미 2024.02.03 2455
81518 잡담 이번엔 제대로 요약 되네요 7 file title: 명사수M16 2024.02.03 554
81517 잡담 서울역에서 파는 김밥 근황 7 file title: 부장님유니 2024.02.03 776
81516 잡담 (약후(?))한국에선 절대 팔릴 수 없는 간식 15 file title: 부장님유니 2024.02.03 1989
81515 잡담 기글하드웨어=클리앙? 47 file title: 명사수M16 2024.02.03 2451
81514 잡담 이제 폰을 바꿀때가 된 것 같아요. 10 Plasma 2024.02.03 622
81513 잡담 늦은 나눔 수령 인증 file Plasma 2024.02.03 212
81512 방구차 저는 독재하긴 글렀나봅니다 6 file title: 야행성skyknight 2024.02.03 594
81511 방구차 저희집 고양이가 했습니다. 2 file 산청군시천면 2024.02.03 478
81510 방구차 축구 보고 한숨 자려다 해봤는데요 2 file title: 야행성PARK_SU 2024.02.03 431
81509 방구차 저는.... 아 아닙니다 9 file K_mount 2024.02.03 343
81508 방구차 예대에 떨어지지 않아 다행입니다.... 4 file CMG90000 2024.02.03 470
81507 퍼온글 당근마켓 (불)효도 라디오 6 file title: 컴맹임시닉네임 2024.02.03 723
81506 잡담 대륙의 AR강화유리 거짓이네요 6 title: 명사수M16 2024.02.03 724
81505 방구차 선동날조 설문조사 '나는 무슨 독재자인가' 17 file 소주 2024.02.03 541
81504 잡담 알리가 잘못했네요. 1 file JBD 2024.02.03 332
81503 방구차 나는 무슨 독재자인가 17 file 냐아 2024.02.02 399
81502 핫딜 8700G 가격 보고 실망한 분들 이리 오세요 9 file 360Ghz 2024.02.02 1052
81501 잡담 가끔 copilot을 갖고 놉니다. 1 file 냐아 2024.02.02 458
81500 장터 (완료)롬라이터 1.8V 강하 어댑터 구합니다. 5 file title: 삼성uss0504 2024.02.02 440
81499 잡담 2024년은 초반부터 돈 쓸 일이 생기네요. 5 file milsa 2024.02.02 591
목록
Board Pagination Prev 1 ... 68 69 70 71 72 73 74 75 76 77 ... 2790 Next
/ 2790

더함
MSI 코리아
AMD
한미마이크로닉스

공지사항        사이트 약관        개인정보취급방침       신고와 건의


기글하드웨어는 2006년 6월 28일에 개설된 컴퓨터, 하드웨어, 모바일, 스마트폰, 게임, 소프트웨어, 디지털 카메라 관련 뉴스와 정보, 사용기를 공유하는 커뮤니티 사이트입니다.
개인 정보 보호, 개인 및 단체의 권리 침해, 사이트 운영, 관리, 제휴와 광고 관련 문의는 이메일로 보내주세요. 관리자 이메일

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소