一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
楼主: cdhigh
收起左侧

Sprint-Layout插件:白嫖力创/Kicad的封装,直接输入中文,and much more

  [复制链接]
发表于 2022-6-10 14:09 | 显示全部楼层
Sprint-Layout
发表于 2022-6-10 23:06 | 显示全部楼层
这个不错,支持一下。
发表于 2022-6-11 09:29 | 显示全部楼层
真不错,谢谢分享
 楼主| 发表于 2022-6-11 19:48 | 显示全部楼层
攻克了一个算法难关,Sprint-Layout的自动布线功能基本完成,再完善一些细节就可以了。
随便测试一下Freerouting的单面板自动布线算法(无过孔),

默认45度走线
single_layer_45.png

调节到90度走线,这个功能倒是很适合用来做洞洞板自动布线,省得在纸上画了
single_layer_90.png

自由角度走线,走线最短原则
single_layer_free.png



发表于 2022-6-11 21:03 | 显示全部楼层
要不直接来KICAD搞自动布线插件?

点评

我现在搞的这个就是Kicad使用的方案 先导出为DSN文件,使用Freerouting自动布线,然后再导入Sprint-Layout Kicad也是一样的流程,所以不需要在Kicad再搞一个插件,它已经内置支持了。  详情 回复 发表于 2022-6-11 21:21
 楼主| 发表于 2022-6-11 21:21 | 显示全部楼层
zhqsoft 发表于 2022-6-11 21:03
要不直接来KICAD搞自动布线插件?

我现在搞的这个就是Kicad使用的方案

先导出为DSN文件,使用Freerouting自动布线,然后再导入Sprint-Layout

Kicad也是一样的流程,所以不需要在Kicad再搞一个插件,它已经内置支持了。

发表于 2022-6-11 23:08 | 显示全部楼层
铁粉,谢谢分享
发表于 2022-6-12 07:57 | 显示全部楼层
真正的人材,
 楼主| 发表于 2022-6-12 20:50 | 显示全部楼层
本帖最后由 cdhigh 于 2022-6-12 22:18 编辑

Sprint-Layout 最大的痛点是什么:一是不能输入中文,另一个就是无法自动布线(它内置的哪个根本不能叫自动布线,我清晰的记得多年前第一次使用Sprint-Layout时兴奋的点击“自动布线”,发现怎么没有给我自动布线?然后等啊等啊,一直没反应,就以为是破解版的问题,好多天以后才知道,还需要一根线一根线的点,这个软件的开发人员竟然把这个功能叫”自动布线“,真不要脸)
本插件希望把这两个问题一并都给解决了,让Sprint-Layout成为业余爱好者最顺手最简单的画板工具。
Kicad的操作还是没有Sprint-Layout来的舒服,Kicad略显繁琐,不过全功能的画板工具都不会太简单,我们就用老鸟和专业人士看不上的Sprint-Layout就好了。

现在发布 1.3版本,增加自动布线功能
实现方案和Kicad一样,分成三个步骤:
1. 导出为DSN文件   
2. 使用开源自动布线软件[Freerouting](https://github.com/freerouting/freerouting/releases)进行自动布线并将布线结果保存为SES文件   
3. 将SES文件导入到Sprint-Layout   


使用方法:

第一步:导出自动布线DSN文件

1. 在Sprint-Layout里面先切换到U层,定义一个封闭的线路板外框,可以为不同的形状比如矩形圆形或不规则图形,完成后切换到其他板层放置元件并适当布局,根据电路图,使用“网络连线”工具将需要连接的管脚连接起来,这个连线在不同的软件里面叫鼠线(Ratsnest)或飞线(Airwire)或其他名称
airwire_and_ulayer.png


2. 在Sprint-Layout里面取消选择(不能选择任何元件或连线),启动插件,切换至“自动布线”选项页
autorouter_main.png


3. 选择需要保存的DSN文件,通过双击布线规则条目来修改其数值,点击“导出DSN”按钮来导出DSN文件。   
除了DSN文件外,本插件还同时生成一个同名的pickle文件,请不要删除,此文件在导入SES时需要用到


第二步:自动布线

1. [下载安装Freerouting](https://github.com/freerouting/freerouting/releases),使用Freerouting打开您导出的DSN文件

2. 点击Freerouting上方工具栏的“自动布线”,等待其完成布线,如果线路板比较复杂,可能需要运行比较长的时间   
可以通过启动时的命令行参数“oit”调节其优化算法的门限,可以更快完成或产生更好的布线结果
freerouting_main.png

3. 默认为双面板,顶层和底层铜箔都允许走线,如果需要单面板布线,可以通过Freerouting菜单 [“参数” / “自动布线”] 对话框选择您需要的铜箔层
freerouting_layers.png

4. 布线完成后,通过菜单 [“文件” / “导出.ses文件”] 将布线结果保存为DSN同名的SES文件
freerouting_save_ses.png


第三步:将布线结果导入Sprint-Layout

1. 选择正确的SES文件后(需要保证同名的pickle文件存在),点击“导入SES”即可以将布线后的结果直接导入到Sprint-Layout。Sprint-Layout不一定需要预先打开之前的电路板,可以是一个空白电路板。

2. 如按住Shift再点击“导入SES”则显示一个导入选项菜单,提供更多导入选择。
import_ses_options.png

* 导入全部(删除已经布线成功的网络连接线): 默认选项,有铜箔连通的网络连接线被删除,没有铜箔连通的网络连接线被保留
* 导入全部(删除所有网络连接线): 将布线结果和元件全部导入并替换电路板上的所有元件,同时删除全部网络连接线(未完成布线的网络连接线也一并被删除)
* 导入全部(保留所有网络连接线): 导入布线结果和元件并替换电路板上的所有元件,同时保留网络连接线(已完成布线的网络连接线也被保留,需要你自己在Sprint-Layout里面逐一确认并手工删除)
* 仅导入自动布线的铜箔走线: 导入走线,不导入元件,不删除电路板上的任何元素,导入的走线会“粘”在鼠标上,需要您移动到对应的位置放下


附:自动布线其他细节说明
* 如果DSN文件同一目录下有同名的.rules文件,则Freerouting会使用此文件覆盖DSN文件中的布线规则,所以根据您的需要来确定是否要删除.rules文件
* 元件只能放在正面。如果是贴片元件,则元件和焊盘都在正面。如果是插件元件,则元件本体在正面,单面焊盘在反面(默认放置插件元件时就是这样的),如果是双面焊盘(过孔镀铜)则正面反面都可以。
* 如果部分区域不希望Freerouting走线,则可以画一个多边形,然后设置为“禁止区”。或者在U层画封闭多边形也能达到同样效果,但U层的多边形多影响到最终电路板外形。
* 如果您使用“组件解锁”功能修改了元件的焊盘丝印之类的属性,则需要在右键菜单先点击“组件锁定”再右键菜单点击“元件...”,将其转换为一个元件,否则导出时Freerouting仅显示焊盘,不显示丝印。(但是不影响布线和重新导入,丝印不会丢失)
* 电源线需要更粗的走线怎么办?预先布好电源线就好。同样的,如果有一些关键的线,比如时钟线之类的也可以预先布好,再让Freerouting布剩下的线。另一个方法是等Freerouting完成后再手工修改。所以根据需要,自动布线既可以当作布线的起点,也可以当作布线的终点。
* 因Freerouting的功能限制,丝印线条只能是水平垂直或45度斜线,其他角度会绘制错误,不过丝印不影响布线,重新导入到Sprint-Layout的显示是正常的。
* 因Freerouting的功能限制,缺少圆弧功能,所以丝印的圆弧没有绘制。
* 有时候正常导入SES时会发现已经走线的网络连接线没有被删除,这是Sprint-Layout的一个BUG,新建一个空白电路板再导入即可正常。




v1.3的详细更新日志:
* 新增自动布线功能(导出为DSN格式后使用Freerouting进行自动布线)
* 新增支持ttc/otc格式的字体文件
* 其他一些细节的优化




点评

楼主威武,功能太强大了  详情 回复 发表于 2022-6-14 17:25
发表于 2022-6-13 13:44 | 显示全部楼层
前几天下载了KICAD 6.0.4版,发现KICAD已经支持中文了。

点评

是的,这是kicadv6相比v5的一大进步,但还不支持更换字体,要等到v7才能更换字体  详情 回复 发表于 2022-6-13 16:59

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-5-2 15:16 , Processed in 0.054913 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表