dukelec 发表于 2023-2-28 00:53:41

CDPnP 座标文件转换之 AD、JLC EDA

本帖最后由 dukelec 于 2023-3-14 11:24 编辑

如果您使用的是 KiCad,则不用转格式,直接用就行,不需要看这篇文章。

JLC EDA 和 AD 的格式是一样的

我们要把 JLC EDA 或 AD 导出的座标文件转换成类似 KiCad 的格式,先看 KiCad 和 AD 输出的座标文件的区别:
(注意,AD 导出座标文件时,要选上 value 栏目!AD 把 value 叫做 comment。)



首先,要把 AD 座标文件的顶部注释部分删除,删除后如下:



此时,我们可以用 excel 打开 csv 座标文件:
(此处用 excel 的开源替代品 LibreOffice)



接下来,要先把 Layer 栏目整个移动到最右边,如果是双面贴片的话,选中除了标题以外的所有内容,然后按排序按钮,在弹出的提示框中选择“扩展排序”:
(不选择扩展的话,只排序选中的内容,前面内容不会伴随)



然后,我们要分别输出顶层和底层座标文件,方法是删除不要的层,然后导出:





然后撤销操作,改为删除顶层保留底层:




现在,如果有底层贴片,我们要用工具转换一下座标文件中 x 轴的符号:

先看说明:


如果是 kicad 座标文件,顶层不用处理。底层要在 CDPnP 软件界面,把原本 PCB 上参考点在 PCB 软件中的座标值,把 X 轴对应的值取反,座标文件不用处理。



对于 AD 座标文件,顶层的话,要在 CDPnP 软件界面,把参考点 PCB 文件座标 Y 轴取反。座标文件不用处理。

底层的话,要在 CDPnP 软件界面,把参考点 PCB 文件座标 X 和 Y 轴都取反。
而且,底层的话还要修改座标文件,把所有 X 轴数据取反,下面使用软件 etc 目录下的脚本对座标文件 X 轴进行取反操作:



见脚本说明,跟 -x 参数表示取反 x 轴

一开始报错是因为 csv 文件是 gbk 编码,这里先用 cconv 工具把 csv 转成 utf-8 编码
(你也可以用其它工具,或者在 excel 软件中修改为 utf-8 编码,直接导出 utf-8 编码的 csv 文本文件)

然后再试就没问题了:



gbk 编码打开会有乱码,而 utf-8 编码则不会:



至此,就已经全部搞定,csv 座标文件的标题和 kicad 不同没关系,layer 值不同也没关系。
layer 值只要判断是 b 或者 B 开头就认为是 bottom 否则是 top 层贴片。
x 和 y 有无 mm 单位也没所谓。

yuyu87 发表于 2023-2-28 08:33:03

用不上,顶一下大师。

dukelec 发表于 2023-2-28 09:52:07

后面有时间再试试做一个全自动转换的脚本,也欢迎大家贡献代码
页: [1]
查看完整版本: CDPnP 座标文件转换之 AD、JLC EDA