On 11:14 AM 23/05/2002 -0700, Embedded Matt said:
>OK, I feel like an idiot for asking this question, but
>I'll use the excuse that I'm only an occasional PCB
>designer.  I mainly write firmware.
>
>I have placed a few pads on my PCB with the following
>properties:
>
>X size: 0
>Y size: 0
>Round
>Hole size 147 mil
>Multi-layer
>Not plated
>
>These are supposed to be mounting holes.  I get
>annular ring violations on these pads.  Should I not
>be using pads for mounting holes?
>
>Protel 99 SE sp6.
>
>Thanks,
>Matt

In summary.

Basic solution is to add an annular ring design rule for the mounting 
holes.  Others have suggested ways of doing that:
1) scope = pad name and make sure all the mounting holes have the same name 
(my normal solution but ..see below for a comment)
2) create a class and scope the rule on the class
3) scope = pad specification, making sure only the non-plated holes have 
the given spec.

I routinely do what you are doing.

If you use the simplest which is method 1) watch out if you ever rename the 
pad.  When you rename things Protel attempts to keep the rules in sync. Say 
you have 4 mounting holes all implemented as pads named MH.  If you have a 
design rule as per 1) targeting Free-MH all will be fine.  But if you then 
go and rename one of the pads to say MHP as you want one of the pads to be 
plated for grounding, then Protel will rename the target of the design rule 
to Free-MHP.  This means that your original MH pads are no longer subject 
to that rule.  So there is good reason to consider the other methods and 
make an informed decision.

I will also usually put a keepout arc around the hole (possibly top and 
bottom layer-specific but often on the keepout layer) to prevent tracks 
getting close to the washers/screw head/standoff.  Making the pad a 
component helps you to remember the keepout.  I usually break the component 
into free primitives after initial placement to prevent it being deleted by 
the synchronizer, as I do not put mounting holes on the Sch.  (Altium, I 
request again a NoUpdate component attribute that will allow me to prevent 
components from being mucked about with by the synchronizer - possibly with 
a report in the macro window.)

Ian Wilson

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* To post a message: mailto:[EMAIL PROTECTED]
*
* To leave this list visit:
* http://www.techservinc.com/protelusers/leave.html
*
* Contact the list manager:
* mailto:[EMAIL PROTECTED]
*
* Forum Guidelines Rules:
* http://www.techservinc.com/protelusers/forumrules.html
*
* Browse or Search previous postings:
* http://www.mail-archive.com/proteledaforum@techservinc.com
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Reply via email to