반응형

 

파일 form만들기

파일명 "pinsOnNet.form"

FILE_TYPE=FORM_DEFN VERSION=2
FORM 
FIXED
PORT 55 15
HEADER "Example Form for Class"


TILE
TEXT "Name"
TLOC 1 8
ENDTEXT

FIELD view_file
FLOC 18 1
CHECKLIST "View File" "label1"
ENDFIELD

FIELD create_file
FLOC 18 3
CHECKLIST "Create File" "label1"
ENDFIELD

FIELD create_view
FLOC 18 5
CHECKLIST "Create and View File" "label1"
ENDFIELD

FIELD field_name
FLOC 26 8
STRFILLIN 8 25
ENDFIELD

FIELD done
FLOC 1 11
MENUBUTTON "OK" 10 3
ENDFIELD

FIELD cancel
FLOC 13 11
MENUBUTTON "Cancel" 10 3
ENDFIELD

FIELD help
FLOC 30 11
MENUBUTTON "Help" 10 3
ENDFIELD

ENDTILE

ENDFORM

 

같은 디렉터리에 위치

반응형
반응형

아래 블로그님 참고

https://m.blog.naver.com/PostView.nhn?blogId=yoondaengs&logNo=150093054056&proxyReferer=https:%2F%2Fwww.google.com%2F

 

아웃룩 2010 후이즈메일 계정 셋팅하기

후이즈 메일을 사용하고 계시는 분들이라면 누구나 이용하시는 아웃룩 그런데, 2010으로 버전업이 되었네요...

blog.naver.com

 

반응형
반응형

1. 유저로부터 마우스 이벤트를 요청하고, 그 좌표값을 변수로 저장.

   ?prompts : command창에 유저에게 보여줄 문장

   ?gridSnap t: grid사용 (클릭 지점 근처 grid지점이 입력됨) nil: grid 해제 (클릭한 그 좌표가 입력됨)

마우스로 클릭

그리고나서 mycoord 변수를 쳐보면 값이 저장된것을 알 수 있다.

 

 

2. 유저로부터 마우스 드레그 좌표(Box)값을 받고, 변수로 저장.

    이 함수는 유저에게 2번의 이벤트를 요구함. (첫번째 선택, 두번째 선택)

    그때 표시 할 2개의 String을 인자로 둠.

첫번째 선택
위에서 드레그한 좌표값이 저장됨을 알 수 있다.

 

 

3. 유저로부터 입력받음.

    3-1. 유저로부터 String(문자열) 입력받음 <axlEnterString>

유저가 입력한 결과값이 answer변수에 들어감.

    3-2. 유저로부터 String(문자열) 입력받음 <axlUIPrompt>

'password 옵션을 사용하면, 암호형태로 display가 됨

        Default값을 넣어놓고 수정 가능. (유저 실수 방지)

 

 

 

4. 유저가 무언가 알림을 띄움.

    4-1. axlUIConfirm() 유저에게 정보전달을 위한 알람을 띄움

    4-2. axlUIYesNo() 유저에게 실행할지 말지 다시 한번 물어봄

yes = t, No = nil 리턴

    4-3. axlUIYesNoCancel() 유저에게 실행할지 말지 다시 한번 물어봄

Yes = 1, No = 0, Cancel = 2 리턴

 

5. 고정좌표로 부터 각도를 얻음

    1) 기준좌표는 입력해야 함.

    2) 기준좌표 기준 마우크 클릭하면 해당 좌표가 나옴, 아래 예제에서는 90도 부분을 클릭

 

 

 

6. 어떤 파일을 텍스트파일로 띄움.

    작업공간은 allegro폴더이며, 내부에 netlist.log파일이 있다. (Capture에서 Netlist작업시 자동 생성)

 

위에 파일을 SKILL로 뛰어볼 것이다.

결과

7. SKILL로 열었던 창, ID를 가지고 종료시키기

( 더자세히 보기)

ansan-survivor.tistory.com/466

 

[Cadence Allegro SKILL] 로그파일, 리포트파일, 텍스트파일 불러와서 창 띄우기

로그나 리포트 등 어떤 파일을 텍스트파일을 불러와서 유저에게 알리기 위해 띄울 수 있다. 그 함수는 axlUIViewFileCreate()와 axlUIWClose()를 사용한다. (테스트) 작업공간은 allegro폴더이며, 내부에 netli

ansan-survivor.tistory.com

 

 

 

반응형
반응형

https://yslife.tistory.com/496

 

헷갈리는 낮 12시, 밤 12시 오전(AM)인가? 오후(PM)인가? by S

나는 핸드폰으로 알람을 맞출때마다 정오 12시나 자정 12시가 과연 am인지 pm인지 매번 헷갈린다. (나만그런가?-_-;) 전에는 이걸 따질일이 없어서 별로 생각해본적이 없었는데 핸드폰이 생기며 핸�

yslife.tistory.com

항상 12시가되면 AM, PM이 헷갈려서 검색해봤다.

위 블로거님 참고.

 

낮 12시 12 PM

밤 12시 12 AM

 

 

반응형
반응형

만약 작업을 하고, 저장을 하는데 아래와 같은 오류가 발생한다면,

아래와 같이 조치하면 된다.

 

현재 작업하고 있는 디렉터리( .brd 파일이 있는 위치 )에 들어가면, 아래와 같이 .brd.lck 파일도 있을 것이다. 작업중인 파일을 lock거는 파일로, 저걸 제거해주면 저장이 된다.

다시말해 위 예제로 보면, master.brd.lck 파일을 제거하면 저장이 가능하다.

반응형
반응형

PCB Editor를 실행했는데, 갑자기 이러한 오류가 발생했다.

검색해보니, 아래 블로거님이 잘 정리해주셨다.

https://m.blog.naver.com/PostView.nhn?blogId=kingreddrake&logNo=220695009774&referrerCode=0&searchKeyword=unable%20to

 

PCB Editor 실행 시 발생하는 에러

PCB Editor를 실행 시 아래와 같은 에러가 발생할 경우 PCB Editor의 환경을 불러오지 못해서 발생...

blog.naver.com

요약하자면,

 

1. Win+R

2. %HOME% 입력

3. pcbenv 폴더 삭제

4. 프로그램 껐다가 다시실행.

반응형
반응형

<간단 요약>

 

ODB++는 CAD 데이터를 CAM 데이터로 변환시켜주는 데이터 포맷. (CAD:설계, CAM:제작)

즉, 전자캐드(ECAD)의 설계데이터(CAD)를 제작하는데 필요한 값(예를들면 좌표 등)으로 즉각적으로 변환하여 제작할 수 있도록 하게하는 데이터이다.

여러 EDA (Electronic Design Automation)회사와 ECAD회사들의 각기 다른 데이터를 사용하면 제작시 데이터 변환등 번거로운 작업들이 많지만,

공통의 약속된 포맷으로 데이터를 뽑아서 제작시 필요한 통일된 데이터를 만든것이다.

ODB++ Format하나로 Design data를 여러 수정단계 없이 Cam으로 쉽게 제작 가능.

 

ODB++ 에는, Step이라는 용어가 있다.

Single PCB Step (하나의 PCB 디자인 정보 - 왼쪽)

Assembly Panel Step (여러 PCB가 오와열으로 나열된 패널의 정보 - 오른쪽)

https://commons.wikimedia.org/wiki/File:PCB_design_and_realisation_smt_and_through_hole.png / https://blog.adafruit.com/2012/07/12/ee-bookshelf-pcb-panel-design-tips/
출처&nbsp;http://180.65.243.188:9000/zb41/zboard.php?id=usr_Allegro&amp;page=34&amp;sn1=&amp;divpage=1&amp;sn=off&amp;ss=on&amp;sc=on&amp;select_arrange=name&amp;desc=desc&amp;no=2283

 

반응형

 

 

< ODB++ 에 대한 자세한 사항 번역 의역>

(참고 : www.artwork.com/odb++/odb++_overview.htm)


What is ODB++

ODB++ is a printed circuit board manufacturing database originally developed by Valor. It was created to try to bring some order to the transfer of board data from the designers to the manufacturer. Because Valor also provides the dominant CAM tool to manfacturers the company was able to get the major industry players to adopt their proprietary standard. In recent years ODB++ has become more open after attempts by the IPC were made to replace it.

The great majority of PCB design software (layout) can output a valid and correct ODB++ file. A free ODB++ viewer can be obtained from Valor (Mentor) that allows one to visualize the data.

 

 

ODB++란?

 

ODB++는 원래 Valor(지금의 Mentor / Simense EDA)에서 개발한 PCB 데이터베이스 이다.

설계자로부터 PCB 제조를 위한 데이터 전송 순서를 정하기 위해 만들어짐.

당시 Valor는 CAM 툴의 독점적으로 점유하고 있기에 대부분의 산업군들이 ODB++ 방식을 채택함.

최근에는 IPC (국제 전자산업 표준 협회) 에서 이를 채택하여 더욱 개방되게 사용됨.

(IPC란? https://ansan-survivor.tistory.com/145)

 

IPC란? (Institute for Printed Circuits) 국제전자산업표준협회 / PCB Footprint 설계 기준

참조: https://ko.wikipedia.org/wiki/IPC_(%EB%8B%A8%EC%B2%B4) IPC (단체) - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. IPC 또는 국제전자산업표준협회(영어: Association Connecting El..

ansan-survivor.tistory.com

대부분 PCB설계 툴에서는 ODB++ 데이터를 출력할 수 있음. 이를통해 Valor(Mentor) 에서는 이 데이터를 시각화할 수 있으며, 무료 ODB++ 뷰어도 볼 수 있음

 

 


What Design Data is Needed to Make a PCB?

To actually build a PCB board the manufacturer needs quite a few pieces of data from the designer. I've summarized the data and its function below:

 

 

PCB제작을 위해 필요한 데이터는 무엇일까?

 

실제 PCB 보드제작을 위해서는 아래와 같은 사항의 데이터들이 필요함.

 


Gerber Files - these are actually "CNC" files which drive a photoplotter which creates the film used to expose each conductor layer in the board. There is also a Gerber file needed for other processes such as solder masks on top and bottom, paste masks and silk screens. So a four layer board could have 8-10 gerber files associated with it.

 

 

거버파일

실제 보드의 도체부분의 필름을 생성시키기 위한 포토플로터의 파일은 "CNC"파일이다.

또한 거버파일은 솔더마스크, 페이스트마스크, 실크스크린 등의 가공을 위한 파일이기도 하다.

(https://ansan-survivor.tistory.com/691)

 

PCB에서 Soldermask란 (솔더마스크)? pastemask란 (페이스트마스크)?

자세한 사항은 아래 영문 링크 보길 바란다. https://www.raypcb.com/the-difference-and-role-of-pcb-paste-mask-and-solder-mask/ The Difference and Role of PCB Paste Mask and Solder Mask | Printed Circui..

ansan-survivor.tistory.com

그래서 만약 4개 layer라고 하더라고 실제는 8~10개 정도의 필름 레이어가 더 필요하다.

 


Drill Files - these are CNC files very similar to Gerber (but different) that are used to control a drilling machine. Plated through holes have to be drilled. On multi-layer boards you can have some holes that go all the way through, some that only go through a few layers and such. These each require a different drill file. There are lots of aggravations with drill data - first, there is no consistent standard as to how the drill tools should be defined in the header; second the coordinate system of the drill data can sometimes be offset from the Gerber files. Finally, one needs a separate document that describes which file passes through which conductor layers.

 

 

드릴 파일

거버파일과 매우 유사한 형태로 드릴가공을 위한 CNC파일이다. (그렇다고 동일하진 않음)

완전히 관통하는 through-hole 또는 일부 layer만 가공되는 Blind/Buried 일 수 있다. 이때는 각각 서로 다른 드릴정보가 필요하다.

(buried/blind through hole에 대한 내용 : https://ansan-survivor.tistory.com/98)

 

[PCB Editor] OrCAD PCB Editor, B/B(blind/buried) via 만들기. (layer내 파 묻힌 여러 via 만들기)

간단히 용어를 정리하면, blind via는 via인데 한쪽만 surface까지 뚫린 via. buried via는 완전 내측 layer만 뚫려있는 via. 여러 층에 복잡한 Via를 만들 때, 이와 같은 기능이 유용할 수 있다. 아래 영상을

ansan-survivor.tistory.com

하지만 몇가지 문제가 있다.

첫째, 드릴 데이터의 Tool Header에 대한 정의가 표준화되어있지 않음.

둘째, 드릴 데이터 좌표가 거버파일로부터 약간 Offset 될 수 있음 (좌표가 살짝 벗어나는 것)

샛째, 어떤 파일이 어떤 conductor layer를 지나는지 설명하는 데이터가 필요한데 부족하다.

 


Routing Files - similar to drill files but defines a path for routing out the board.

 

 

라우팅 파일 (배선 파일)

드릴파일과 유사하지만, 이는 배선을 위한 경로를 정의

 


stackup - the stackup is generally a print or written description of the board material, thickness, interposer and order. It is essential for multi-layer boards.

 

 

Stackup (스택업)

다층기판에 필요한 보드의 재료, 두께, layer사이에 끼어있는 것들(Interposer), 쌓는 순서에 대한 정보



IPC-D-356 - esentially an electrical database of connections needed for testing the completed board. It is a very old format with a couple of variations and contains net names, test points and pins. Again, sometimes the data on this file is offset from the Gerbers which require manual intervention when trying to use this data.

 

 

IPC-D-356

완성된 PCB를 전기적 연결성을 테스트하기 위한 데이터베이스.

Net이름, TP(테스트포인트), 핀, Via 등에 대한 포맷

몇몇 데이터는 Gerber파일에서 offset이 되어 좌표를 벗어날 수 있으므로, 수동으로 조정이 필요

 



Documentation - describes key elements of the board (i.e. locations), dimensions, materials and such. It can take the form of a PDF file, an HPGL file, Gerber file or AutoCAD file.

 

 

문서화

좌표, 치수, 재료 같은 PCB의 핵심적인 요소 설명.

PDF나 HPGL파일, 거버파일, 오토캐드 파일 등으로 출력할 수 있음



Component Placements - this is not used by the bare board manufacturer but is used for DRC checking and for generating pick and place files. The component "library" is located in the EDA directory (as data) and the component placements are in the layer section: comp_ _top for the components on the top side and comp_ _bot for the componens on the bottom side.

 

부품파트 배치

보드만을 제작하는 업체는 사용하지 않지만, DRC검사 및 Pick & Placement 파일 생성에 필요

부품파트의 라이브러리는 각 EDA 디렉터리에 저장되어 있음.

Layer의 위치에 따라 comp_ _top 또는 comp_ _bttom 등과 같이 구성되어 있음



Importing and Checking

You can see that there is a lot of data to send from design to manufacturing and often the data that is transmitted is incomplete, inconsistent or just plain incorrect. So the first thing the board manufacturer does is to import all the different data formats and bring the data up in his CAM software. He then checks the data and runs a series of tests to insure that the board can be manufactured. If he finds violations such as traces too close, pads to small for the drill hole or other related problems he can either fix them or report them back to the designer.

 

 

Import(가져오기) 및 Checking(검사하기)

설계부터 제조까지 보낼 데이터는 많고 데이터가 부정확한 경우가 많음.

따라서 설계업체가 다양한 형식을 가공에 용이하게 CAM에 맞게 데이터를 출력할 필요가 있음

그 데이터들이 각 테스트를 통해 보드제조가 가능한지 확인해야 함.

검토과정에 제조할 수 없는 "너무 가까운 배선", "드릴 뚫기엔 너무 작은 구멍"와 같은 위반사항을 발견 시 수정할 필요가 있음.

이때 설계자는 해당 데이터를 수정할 필요가 있음



ODB++ provides a stable framework for the required data. It does not insure, of itself, that the data is correct or manufacturable but it does allow the board manufacturer to load all the data at once and immediately run the tests necessary to determine that it is consistent and buildable.

 

ODB++는 요구하는 데이터에 대해 안정적인 프레임워크(기준점?)를 제공함.

데이터 자체가 정확한 제조 가능성을 보장하지 않지만, 모든 제조업체가 한번에 데이터를 로드하여 제조 가능성을 평가할 수 있는 일관성을 제공.



What goes into the ODB++ is generally controlled by the PCB design tool and to a lesser extent by the designer. ODB++ has a lot of data "containers" that are optional and which may or may not be used by the exporting design tool.

 

ODB++는 설계자의 영향은 최소화 되며, PCB설계 툴에 의해 컨트롤 됩니다. (인간의 영향 최소화)

ODB++는 선택적으로 여러 데이터를 넣을 수 있고, 뺄 수도 있습니다.



The ODB++ File Structure

ODB++ is not a single "file" except when transmitting it from one place to another. To send an ODB++ file one first combines the files/directories into a tarball (this is an old Unix construct) and then zips it using gzip. However it is also possible to use other zip formats as long as the hierarchy (folder) structure is preserved.

 

 

ODB++ 파일 구조

 

ODB++는 통체로 보내는 것을 제외하고, 하나의 파일 (single file)이 아니다.

ODB++를 전송하기 위해서는 Tarball로 묶고 (유닉스/리눅스 기준), gzip을 통해 압축한다.

아래 디렉터리 구조가 유지된다면 다른 형식의 zip을 사용해도 됨.

 

 

 

 

 

 

OrCAD / Allegro PCB에서 ODB++ 데이터를 추출하는 방법.

https://ansan-survivor.tistory.com/1349

 

[PCB Editor] OrCAD / Allegro PCB ODB++ 데이터 추출하기

1. File - Export - ODB++ Inside 2. ODB++는 전용 소프트웨어가 깔려있어야 하는데, 깔려있지 않으면 아래와 같이 표시된다. 따라서 설치해야 한다. 2-1. ODB++ 소프트웨어 설치하기 (아래 링크) 아쉽게도 회

ansan-survivor.tistory.com

Xpedition PCB Layout 에서 ODB++ 데이터를 추출하는 방법.

https://ansan-survivor.tistory.com/1552

 

[Xpedition Layout] 엑스페디션 PCB layout, NC Drill 파일 뽑기

ODB++란? 아래 참고 https://ansan-survivor.tistory.com/194 ODB++는 CAD 데이터를 CAM 데이터로 변환시켜주는 데이터 포맷. (CAD:설계, CAM:제작) 즉, 전자캐드(ECAD)의 설계데이터(CAD)를 제작하는데 필요한 값..

ansan-survivor.tistory.com

 

 

ODB를 포함하는 더 상위의 계념의 데이터 포맷인 EDX가 있다. 이는 모든 PCB관련 업종 즉, 설계부터 제조까지 모두를 호환하는 데이터 포맷 함께 개발을 추구한다.

https://ansan-survivor.tistory.com/1411

 

EDX (Enterprise Data eXchange) 데이터 포맷 이란?

EDX 공식 사이트는 아래와 같다. www.edx-sa.com EDX Solutions Alliance EDX uses industry-standard neutral files, such as PDF, EDIF and EDX itself, for viewable objects used by non-ECAD tools. www.edx-..

ansan-survivor.tistory.com

 

 

* ODB++ Free Viewer 다운로드는 아래에..

https://ansan-survivor.tistory.com/1918

 

ODB++ Free viewer 다운로드 설치하기, 사용방법

ODB++ 에 대해 궁금하면 아래를 참고. https://ansan-survivor.tistory.com/194 ODB++ 란? (PCB 가공에 필요한 CAM 데이터) ODB++는 CAD 데이터를 CAM 데이터로 변환시켜주는 데이터 포맷. (CAD:설계, CAM:제작) 즉, 전자

ansan-survivor.tistory.com

 

 

반응형
반응형

사용자가 마우스클릭을 하며 객체를 Highlight 시키는 것과 같이, SKILL 코드로 좌표를 입력하여 객체를 Highlight 시킬 수 있다.

주의해야할 점은, 객체 선택 전에 반드시 axlSetFindFilter() 함수가 선행 되어야 한다. (아래 참고)

https://ansan-survivor.tistory.com/192

 

[Cadence SKILL] Find Filter (Find 필터) 컨트롤하기

OrCAD/Allegro PCB Editor 옆에 Element를 쉽게 선택하고 수정하기 아래와 같이 위해 필터를 제공한다. 그런데 SKILL 코드로 이 필터를 컨트롤 할 수 있다. 또한 어떤 요소를 선택하기 위해서는 필수로 필터

ansan-survivor.tistory.com

먼저 간단한 Tip이지만, PCB Editor에서 해당객체를 클릭하면 Command 로그에 해당 좌표가 기록된다. 그래서 좌표를 모른다면 다음과 같이 클릭해서 찾을 수도 있다.

(Pin 클릭했을 때 (mm단위) )

 

(필요한 부분 찾아가기 목차)

1. Find Filter로 Pin만 선택하도록 하고, axlSingleSelectPoint()로 선택하기.

2. 여러 요소 선택하기 axlAddSelectPoint()

3. 선택된 요소중 몇개 빼기 axlSubSelectPoint()

4. Box 드레그 단위로 선택하기, 추가하기, 제거하기

5. 이름(Name)으로 선택하기 (Net, Reference Number)

6. 선택한 Element의 DBID 뽑아보기

 

(알아두기)

axlSingleSelect 는 이전에 선택된 모든걸 Clear하고 새로운 선택을 하는것.

axlAddSelect는 이전에 선택된 것 + 추가로 선택하는 것.

axlSubSelect는 이전에 선택된 것 - 빼주는 것.

함수 뒤 좌표인자를 넣지 않으면 유저에게 선택할 수 있도록함.

 

 

1. Find Filter로 Pin만 선택하도록 하고, axlSingleSelectPoint()로 선택하기.

필터링
좌표 (10,10) 선택
다음과 같이 좌표 (10, 10)에 있는 Pin이 Highlight 됨을 알 수 있다.

좌표를 (11:13) 으로 입력하면, 그전에 Highlight 되었던 Element가 Clear되고, 새로운 Element가 활성화 된다.

2. 여러 요소 선택하기 axlAddSelectPoint()

결과

3. 선택된 요소중 몇개 빼기 axlSubSelectPoint()

    물론 이 함수를 여러번 써서 여러개를 뺄 수 있다.

 

 

4. Box 드레그 단위로 선택하기

    2지점의 좌표를 list에 넣어주면 아래 그림처럼 Box를 그리며 그 안에 포함되거나 걸쳐있는 모든 Element를 선택한다.

    (단, 반드시 FindFilter가 선행되어야 한다)

마찬가지로

axlAddSelectBox(list(좌표 좌표))  박스형태로 Element를 추가 할 수 있고,

axlSubSelectBox(list(좌표 좌표))  박스형태로 Element를 뺄 수 있다.

 

5. 이름(Name)으로 찾기

    5-1. VCC 네트 선택

        VCC net이름으로 아래와 같이 찾으면, shape을 포함한 모든 VCC 네트가 하이라이트 된다.

    5-2. INT0, INT1 이라는 네트 이름만 선택하기.

    5-3. Reference 이름으로 찾기

U1, U3 참조번호를 가진 부품 2개가 활성화 된다.

6. 선택된 Element의 DBID 뽑아보기

 

7. 선택한 요소가 총 몇개인지 개수 뽑기.

8. DBID를 알 때, DBID로 부품 선택하기.

    a에 저장된 U1의 DBID로 하이라이트 시키는 예제.

9. Find Filter에 체크한 사항을 전체 선택하기

    Design 내 모든 부품 선택하기

    Design 내 모든 via 선택하기

반응형
1···155156157158159160161···181

+ Recent posts