5 Replies Latest reply on Mar 16, 2015 3:37 AM by nick_hong

    Solder Paste Layer 면적 계산

    dr.hong

      Solder Paste Layer 면적을 계산하기 위해 아래와 같이 하였습니다.

      Solder Paste Layer에 User가 Draw한 object는 계산 되지만, Library에 포함되어 있는 Solder Paste는 계산이 안됩니다.

      Library에 포함되어 있는 Solder Paste 면적을 계산 하기 위해서는 어떻게 해야 하나요?

       

      Dim mskeng
          Set mskeng = CreateObject("MGCPCBEngines.MaskEngine")
          Scripting.AddTypeLibrary ("MGCPCBEngines.MaskEngine")
          Scripting.AddTypeLibrary ("MGCPCB.ExpeditionPCBApplication")


      Dim stenColl

          Set stenColl = pcbDoc.FabricationLayerGfxs(epcbFabSolderpaste, epcbSelectAll, epcbSideTop)

       

      Dim stenUs, shapesCu

          Set stenUs = mskeng.Masks.Add
          Set shapesCu = stenUs.shapes

      Dim stenobj, pnts

          For Each stenobj In stenColl
        pnts = stenobj.Geometry.PointsArray
        Call shapesCu.AddByPointsArray (1 + UBound(pnts, 2), pnts)
      Next

        • 1. Re: Solder Paste Layer 면적 계산
          nick_hong

          Document.FabricationLayerGfxs 를 호출할 때에는 4 가지의 argument를 줄 수 있습니다.

          그 중 마지막 argument로 부품 내에 있는 graphic을 포함할 지의 여부를 결정할 수 있습니다.

          제가 테스트해 보지는 않았지만, 아래와 같이 (굵게 표시된 부분 확인) 부품 내의 graphic을 포함하도록 구문을 수정하여 결과를 비교해 보세요.

           

              Set stenColl = pcbDoc.FabricationLayerGfxs(epcbFabSolderpaste, epcbSelectAll, epcbSideTop, True)

           

          PCB Automation Reference 매뉴얼에서는 Chapter 3 > Alphabetical View of PCB Data Objects > Document Object > FabricationLayerGfxs Property에서 자세한 설명을 찾을 수 있습니다. (EE7.9.5 매뉴얼에서는 812페이지에 있습니다.)

          • 2. Re: Solder Paste Layer 면적 계산
            dr.hong

            FabricationLayerGfxs Property는 PCB Automation Reference 616페이지에서 확인 했습니다만, 부품을 포함하는 옵션은 없는 것 같습니다.

            죄송하지만 한번 더 확인 부탁드립니다.

            • 3. Re: Solder Paste Layer 면적 계산
              nick_hong

              혹시 사용하시는 버전을 알려주실 수 있나요? 제가 가진 EE7.9.5 매뉴얼에서 해당부분을 캡쳐해 봅니다.

               

              *

              FabGfxs.jpg

              • 4. Re: Solder Paste Layer 면적 계산
                dr.hong


                부품 내부의 Draw object는 면적이 계산 됩니다만, Padstack의 면적은 계산되지 않습니다.

                Padstack Editor의 EPsDBPadLayer EnumepsdbPadLayerTopMountSolderPaste가 있는데 어떻게 접근을 해야 할지 잘 모르겠습니다.

                바쁘시겠지만 부품 내부의 SolerPaste의 면적을 계산 할 수 있는 방법 확인 부탁드립니다.

                • 5. Re: Solder Paste Layer 면적 계산
                  nick_hong

                  부품의 Pin은 Component Object와 연관돤 하나의 Object이므로, Pin (padstack)내에 있는 형상을 가져오려면, Component > Pin > Pad > Area 의 순으로 전개해 나아가야 합니다.

                   

                  방법을 찾으시는 데에 어려움이 있으신 것 같아 간단한 예제를 첨부합니다.

                  첨부 스크립트는 padstack editor을 접근하지 않고, 도면 내에서 "선택된 부품"의 각 Pin의 각 Pad 중 SolderPaste에 해당하는 것만을 가져와 각각의 면적을 계산하도록 해 본 예제입니다. 단순화 하기 위해 Place 모드에서 부품을 "하나"만 선택했을 때에 작동하도록 하였습니다.

                  * 면적의 계산을 위해 MaskEngine을 사용하였으므로, Automation Pro 라이선스가 필요합니다.

                  제 샘플 도면 중 다이오드 하나를 선택하여 실행해 본 결과는 다음과 같습니다. SolderPaste 뒤에 씌어진 숫자가 해당 layer에 나타난 형상의 면적입니다.

                  Ref: D1

                  . Pin: 1

                      Bottom SolderPaste: 0.16

                      Top SolderPaste: 0.09

                  . Pin: 2

                      Bottom SolderPaste: 0.16

                      Top SolderPaste: 0.09

                   

                  * Pin이 많은 부품의 경우 MsgBox 의 표시글자 제한으로 인해 결과가 일부 잘려나갈 수 있습니다.