一款有趣的EDA設(shè)計(jì)應(yīng)用easyeda
最近發(fā)現(xiàn)個(gè)神奇的網(wǎng)站,可以在云端進(jìn)行硬件設(shè)計(jì)(畫(huà)原理圖、畫(huà)PCB圖、仿真),而且還提供了制板廠家的網(wǎng)上下單接口,將設(shè)計(jì)直接外發(fā)打樣,非常方便。初步體驗(yàn)了一下,感覺(jué)相當(dāng)好,好在哪兒,個(gè)人總結(jié)了幾點(diǎn):
1、基于WEB技術(shù),很好地做到了跨平臺(tái),經(jīng)體驗(yàn)真的如首頁(yè)所說(shuō)全平臺(tái)支持,如下圖,是筆者在Ubuntu和IOS 10.1上體驗(yàn)時(shí)的截圖。
圖1 ubuntu系統(tǒng)下使用應(yīng)用
圖2 IOS 10.1系統(tǒng)下使用應(yīng)用
2、對(duì)本地主機(jī)的配置要求較低,筆者在1核CPU,1GB內(nèi)存的虛擬機(jī)上運(yùn)行流暢,與Cadence的配置要求I5 2核+,4GB內(nèi)存+,硬盤(pán)10GB+相比,真是太微不足道了。
3、辦公不分場(chǎng)所,和未來(lái)的辦公理念“在家辦公,遠(yuǎn)程辦公”很符合。因?yàn)檎麄€(gè)工程都在云端管理,打開(kāi)網(wǎng)頁(yè)登陸賬號(hào)就能繼續(xù)干活,都不用拷貝來(lái)拷貝去。筆者的體驗(yàn)設(shè)計(jì)就是在公司干了一部分,然后在家收尾的。
4、很容易分享設(shè)計(jì),大大提高了設(shè)計(jì)的復(fù)用性,不用將時(shí)間浪費(fèi)在別人干過(guò)的工作上,好比庫(kù)啊,模塊啊,拿來(lái)就能用,有點(diǎn)像軟件開(kāi)發(fā)里面的代碼開(kāi)源,這算是硬件的開(kāi)源吧。個(gè)人覺(jué)得平時(shí)要是多留意平臺(tái)上與自己工作和學(xué)習(xí)相關(guān)的設(shè)計(jì),收集素材,到自己要進(jìn)行設(shè)計(jì)時(shí)便能信手拈來(lái)了。
5、非常簡(jiǎn)單易用,像筆者這種使用Protel產(chǎn)品的老司機(jī),不需要任何教程就能在一天內(nèi)熟悉這個(gè)應(yīng)用(叫軟件好像不太恰當(dāng),它應(yīng)該是個(gè)開(kāi)發(fā)平臺(tái),為了方便描述就叫它應(yīng)用好了)的主要開(kāi)發(fā)工具,并完成DEMO設(shè)計(jì)。
6、完善的社區(qū),有豐富的資料,也有便捷的交流討論空間,更有第4點(diǎn)描述的豐富參考設(shè)計(jì),筆記認(rèn)為即使是PCB設(shè)計(jì)的初學(xué)者,也能輕易上手。真感慨自己入行的時(shí)候摸索著學(xué)習(xí)畫(huà)圖工具時(shí)的痛苦啊。
總的來(lái)說(shuō),個(gè)人覺(jué)得這款應(yīng)用是云理念使用得很到位的產(chǎn)品。以前整天聽(tīng)到這里云哪里云的,筆者最多也就是備份點(diǎn)資料到云盤(pán)上,省得擴(kuò)展本地硬盤(pán)。體驗(yàn)這個(gè)應(yīng)用之后,算是對(duì)云有了新的認(rèn)識(shí),它真的能為辦公和學(xué)習(xí)帶來(lái)便捷,更能分享好東西,并且能集眾人之力去做更好的東西。
這時(shí)候不明真相的圍觀群眾估計(jì)要吐槽了:“既然是互聯(lián)網(wǎng)應(yīng)用,沒(méi)有網(wǎng)絡(luò),或者網(wǎng)絡(luò)不行那豈不是不用干活了”。筆者的體驗(yàn)是像咱們公司這種看個(gè)網(wǎng)易視頻新聞都要load半天的網(wǎng)速,都能夠流暢操作。筆者也覺(jué)得挺神奇,具體是怎么技術(shù)實(shí)現(xiàn)的筆者就不太懂了。按照網(wǎng)站上的資料描述,應(yīng)用也是可以離線操作的,設(shè)計(jì)完成后再保持上傳,這部分沒(méi)有具體體驗(yàn),不作評(píng)論。
繼續(xù)有吐槽:“你說(shuō)的好處是任務(wù)互聯(lián)網(wǎng)應(yīng)用都應(yīng)該具備的呀,說(shuō)的好像要上天,都不知道能干些啥”。這個(gè)就是筆者要和大家分享的主要內(nèi)容了,分享一下它如何完成原理圖PCB設(shè)計(jì)。
以下文章,將與AD9對(duì)比,記錄easyeda的使用過(guò)程。對(duì)比是學(xué)習(xí)新事物的好辦法,將新知識(shí)與已有知識(shí)架構(gòu)的內(nèi)容進(jìn)行對(duì)比,能夠更快地建立新知識(shí)的模型和架構(gòu),完成整體學(xué)習(xí)。
AD9中新工程建立過(guò)程是這樣,新建一個(gè)工程——》新建原理圖紙并加入到工程——》新建PCB圖紙加入到工程——》新建原理圖庫(kù)加入到工程——》新建PCB圖庫(kù)加入工程——》將已有常用原理圖庫(kù)加入工程——》將已有常用PCB圖庫(kù)鍵入工程——》在新建原理圖庫(kù)中設(shè)計(jì)并添加新器件——》在新建PCB圖庫(kù)中設(shè)計(jì)并添加新封裝——》準(zhǔn)備到位后設(shè)計(jì)原理圖、PCB圖——》導(dǎo)出生產(chǎn)資料,整體結(jié)構(gòu)大致如下:
圖3 AD9工程結(jié)構(gòu)
按照AD9的新建工程思路,在easyeda.com上建立一個(gè)demo設(shè)計(jì)試試看(建立設(shè)計(jì)需要注冊(cè)并登陸,不過(guò)可以使用QQ授權(quán)登陸,掃一掃,即使在網(wǎng)吧也不用密碼泄露,非常簡(jiǎn)單)。
新建工程,要新建的內(nèi)容都可以在這個(gè)菜單中找到,后續(xù)的新建圖紙和庫(kù)也是在這個(gè)菜單中選擇。
圖4 新建工程
新建原理圖,點(diǎn)擊新建原理圖,會(huì)馬上生成一張圖紙,點(diǎn)擊save as后,可以選擇圖紙所屬的項(xiàng)目,圖紙名稱(chēng),還可以增加一些簡(jiǎn)單的描述
圖5新建原理圖紙
新建PCB圖,點(diǎn)擊新建PCB,會(huì)馬上生成一張圖紙,點(diǎn)擊save as后,可以選擇圖紙所屬的項(xiàng)目,圖紙名稱(chēng),還可以增加一些簡(jiǎn)單的描述
圖6新建PCB圖
到目前為止與AD9沒(méi)什么不同,工程結(jié)構(gòu)如下:
圖7 easyeda工程結(jié)構(gòu)
按照初始思路,繼續(xù)新建原理圖庫(kù),創(chuàng)建庫(kù)的時(shí)候要求填入的信息比較多,不過(guò)都是一些庫(kù)管理信息,方便后續(xù)查找復(fù)用,對(duì)demo設(shè)計(jì)影響不大。
圖8 新建原理圖庫(kù)
圖9 新建原理圖庫(kù)
但是save as的時(shí)候發(fā)現(xiàn)并沒(méi)有要求填入項(xiàng)目信息,簡(jiǎn)單地填好描述后,點(diǎn)擊SAVE。此時(shí)發(fā)現(xiàn)工程結(jié)構(gòu)中也并未按照預(yù)期出現(xiàn)原理圖庫(kù)文件。由此可見(jiàn),操作思路已經(jīng)和AD9出現(xiàn)了不同。經(jīng)筆者逐個(gè)查看選項(xiàng),發(fā)現(xiàn)建好的原理圖庫(kù)在以下的窗口中:
圖10 原理圖庫(kù)與封裝庫(kù)入口選項(xiàng)
圖11 原理圖庫(kù)與封裝圖庫(kù)管理窗口
上圖是筆者在設(shè)計(jì)完封裝后截圖的,如何設(shè)計(jì)庫(kù)文章后面有提到。想說(shuō)的是原理圖庫(kù)會(huì)被放置在窗口的schematic lib欄,該窗口下面還有一個(gè)package欄目,想必是放置封裝庫(kù)的。經(jīng)體驗(yàn),果不其然,新建的封裝圖庫(kù)文件會(huì)放置在這欄中。原來(lái)easyeda中庫(kù)的概念就是指單個(gè)元器件,與AD9不同,AD9的庫(kù)是包含了多個(gè)元器件的單個(gè)文件,在電腦中容易拷貝和轉(zhuǎn)移,不過(guò)不便之處是需要定期合并這些庫(kù),刪除重復(fù)的元器件,使得團(tuán)隊(duì)中的不同成員能夠使用統(tǒng)一的庫(kù)進(jìn)行設(shè)計(jì)。由于easyeda的設(shè)計(jì)都在云端完成,庫(kù)的管理與共享都很方便,這種方式就更加合理了。
至此,四大工作空間:原理圖、PCB圖、原理圖庫(kù)、封裝庫(kù),都已到位,接下來(lái)描述一下如何在每個(gè)空間中開(kāi)展工作。
原理圖庫(kù)設(shè)計(jì)
在圖11中選中建立好的庫(kù)(元件),點(diǎn)擊右下的edit,就能進(jìn)入原理圖庫(kù)編輯界面,這個(gè)界面的工具欄都很直觀
圖12 原理圖庫(kù)編輯工具
要提起注意的是添加引腳的操作,選擇窗口頂部,圖釘一樣的圖標(biāo),可放置引腳,如下圖:
圖13 放置引腳
放置引腳的時(shí)候需要注意方向,不過(guò)首次使用的時(shí)候應(yīng)用很貼心,會(huì)有一些專(zhuān)門(mén)的提示(這些提示貫穿整個(gè)體驗(yàn)過(guò)程,為快速上手提供很大的幫助),如下圖:
圖14 放置引腳相關(guān)提示
畫(huà)圖時(shí)發(fā)現(xiàn)沒(méi)有交叉點(diǎn)工具的,筆者的做法是畫(huà)一條短線,然后將其縮成一點(diǎn),再調(diào)節(jié)線寬,最后將其挪動(dòng)到交叉點(diǎn)處,畫(huà)好的元器件圖例如下(看到筆者費(fèi)盡心思畫(huà)的交叉點(diǎn)了么?其實(shí)也可以不畫(huà)的,但是這樣比較嚴(yán)謹(jǐn)。):
圖15 元器件圖例
還需要提一下的是給圖例關(guān)聯(lián)封裝,其實(shí)也可以后期的原理圖編輯的時(shí)候再給元件添加封裝,關(guān)聯(lián)封裝的選項(xiàng)如下圖,點(diǎn)擊之后會(huì)進(jìn)入庫(kù)管理窗口,封裝可以選擇自己設(shè)計(jì)的(圖11中的MY PARTS),也可以選擇應(yīng)用提供的,這次筆者選擇的是應(yīng)用提供的庫(kù),system components(因?yàn)橄到y(tǒng)提供的庫(kù)相當(dāng)漂亮),完成后的元件庫(kù)可以在管理器底下看到,左邊是原理圖圖例,右邊是封裝圖例。
圖16 關(guān)聯(lián)封裝
封裝圖庫(kù)設(shè)計(jì)
在圖11中選中建立好的封裝,點(diǎn)擊右下的edit,就能進(jìn)入封裝庫(kù)編輯界面,這個(gè)界面的工具欄和圖層管理都很簡(jiǎn)單直觀,最多也就是選擇個(gè)焊盤(pán)的參數(shù),無(wú)需多提,畫(huà)就是。
圖17 封裝庫(kù)編輯界面工具及選項(xiàng)
原理圖設(shè)計(jì)
雙擊圖7中的原理圖,進(jìn)入原理圖編輯界面,點(diǎn)擊窗口頂部的放大鏡圖標(biāo),可進(jìn)入庫(kù)管理窗口,如下圖
圖18 放置元器件
進(jìn)入庫(kù)管理窗口后可選擇自建的庫(kù)也可選擇應(yīng)用提供的庫(kù),此次筆者選擇的是應(yīng)用提供的庫(kù),看了一下,在easyeda components中幾乎能找到所有的常用元器件。選擇元器件時(shí)可看到他們的封裝信息、參數(shù)值(編輯原理圖的時(shí)候可以直接修改)還有封裝預(yù)覽圖。管理窗口也支持搜索功能,以便快搜找到自己想要的元器件。
要提起注意的是,當(dāng)我們的自建庫(kù)發(fā)生了變更,保存后也無(wú)法馬上使用到這個(gè)更新后的圖例,也就是說(shuō)此時(shí)點(diǎn)擊place放置到原理圖中的圖例依然是未更新的狀態(tài),筆者的體驗(yàn)是這樣,需要點(diǎn)擊其它元器件,然后再次點(diǎn)擊更新后的元件,此時(shí)再放置圖例,才是更新后的圖例。感覺(jué)是這樣,更新后的數(shù)據(jù)提交上云端了,但是云端不會(huì)馬上更新回本地,可能跟網(wǎng)絡(luò)通信協(xié)議有關(guān),用戶(hù)需要申請(qǐng)才能回發(fā),建議設(shè)計(jì)者可以增加個(gè)refresh按鈕,以便用戶(hù)可以發(fā)起申請(qǐng),更新本地?cái)?shù)據(jù)。
圖19 選擇要放置的元器件
還要提一下的是,在畫(huà)圖窗口的右上角不起眼的地方有很多選項(xiàng),其中可以設(shè)置圖紙的大小,如下圖,其它工具沒(méi)什么難度,在此就不提了,留著自己體驗(yàn)。
圖20 更多選擇欄
將所需元器件逐個(gè)放到圖紙中,擺放好位置后,連線,demo完成的時(shí)候如下圖,其中元器件的位號(hào)會(huì)自動(dòng)生成,建議不要隨便改動(dòng),避免重復(fù),元件器的規(guī)格可以直接點(diǎn)擊編輯,不過(guò)這樣子就會(huì)和庫(kù)里面的信息不一致了,建議直接在庫(kù)中找到自己想用的規(guī)格,然后放置在原理圖中,這樣對(duì)后期BOM的準(zhǔn)確性也有好處,養(yǎng)成良好習(xí)慣不要貪圖一時(shí)之快。
圖21 原理圖
熱鍵設(shè)置
為了方便操作,可以配置快捷鍵,如下圖,因?yàn)閑asyeda的快捷鍵和AD9相似,筆者操作時(shí)就不需要設(shè)置了。
圖22 配置快捷鍵
PCB圖設(shè)計(jì)
鼠標(biāo)移到窗口上方的板卡圖標(biāo)處,會(huì)彈出兩個(gè)選項(xiàng)選項(xiàng)。原本按照AD9的思路,點(diǎn)擊update PCB就可以將原理圖導(dǎo)入到同個(gè)工程的PCB中。但是在easyeda中第一次點(diǎn)擊update PCB的時(shí)候會(huì)提示工程未轉(zhuǎn)換成PCB,需要先點(diǎn)擊convert project to PCB,這時(shí)會(huì)自動(dòng)生成一張PCB圖,如下圖,自動(dòng)生成的PCB圖會(huì)自動(dòng)形成一個(gè)格則的板邊,體驗(yàn)時(shí)發(fā)現(xiàn)這個(gè)自動(dòng)生成的板邊大約剛好可以放下所有的元器件。因?yàn)閏onvert project to PCB會(huì)自動(dòng)生成圖紙,原本在工程中的PCB圖就沒(méi)有必要了,刪除工程中的圖紙,然后save as將新生成的圖紙保存至工程中。
圖23 生成PCB圖
接下來(lái)就是擺放元器件和連線了,和AD9沒(méi)啥區(qū)別,就連轉(zhuǎn)向的快捷鍵都是空格,轉(zhuǎn)向的時(shí)候發(fā)現(xiàn)有的元器件一轉(zhuǎn)向就會(huì)跑到較遠(yuǎn)處,但是有的元器件不會(huì),初步懷疑跟庫(kù)的原點(diǎn)有關(guān)系,又或者沒(méi)設(shè)置好什么選項(xiàng),因?yàn)槭浅醮问褂盟詻](méi)有深入研究,已經(jīng)在網(wǎng)站的論壇中發(fā)帖求助前輩了。
擺放和連線前要注意設(shè)置規(guī)則,規(guī)格設(shè)置比較簡(jiǎn)單,但是對(duì)于demo來(lái)說(shuō)已經(jīng)夠了,而且筆者平時(shí)畫(huà)圖時(shí)設(shè)置得最多的就是這么幾個(gè)主要規(guī)則,如下圖。
圖24 規(guī)格設(shè)置
筆記比較喜歡easyeda的圖層管理界面,它都已經(jīng)將圖層的顏色設(shè)置好了,而且不同層色差比較大,畫(huà)圖的時(shí)候看來(lái)比較舒服。如下圖,右邊的窗口需要點(diǎn)擊左邊窗口的齒輪圖標(biāo)才會(huì)出現(xiàn),目的是為了顯示更多的圖層,像paste、solder這平時(shí)用的比較少,除非特殊情況,可以隱藏。左邊的窗口挪動(dòng)一下鉛筆就能進(jìn)入該圖層進(jìn)行編輯,點(diǎn)擊眼睛就能開(kāi)關(guān)圖層,是不是覺(jué)得很眼熟,沒(méi)錯(cuò),就跟PS軟件一樣,管理起來(lái)相當(dāng)方便。而且整個(gè)界面色差繽紛,真有畫(huà)畫(huà)的感覺(jué)。
圖25 圖層管理
畫(huà)完之后的圖紙如下圖:
圖26 PCB圖
圖中P2的位置筆者故意使用了自己設(shè)計(jì)的封裝,換封裝的操作參考圖16,應(yīng)用提供的庫(kù)中的封裝都比較漂亮,看這個(gè)電源座子DC1就做得很精致。畫(huà)完的圖需要進(jìn)行規(guī)格檢查,如下圖,如果有DRC錯(cuò)誤,會(huì)在DRC errors選項(xiàng)中顯示出來(lái),因?yàn)樵趫D24中勾選了realtime DRC,所以畫(huà)圖的時(shí)候出現(xiàn)犯規(guī),就能直接發(fā)現(xiàn)了,畫(huà)完圖的時(shí)候在這個(gè)選項(xiàng)中應(yīng)該是沒(méi)有任何內(nèi)容的才對(duì)(畫(huà)圖的過(guò)程中有時(shí)正常的)。
圖27規(guī)格檢查
沒(méi)有規(guī)則錯(cuò)誤就說(shuō)明圖紙已經(jīng)準(zhǔn)備好了,可以進(jìn)入出生產(chǎn)文件的環(huán)節(jié)了。
生產(chǎn)文件的生產(chǎn)(gerber files、BOM、pick and place file)
生成生產(chǎn)文件前可以點(diǎn)擊窗口上方的照相機(jī)圖標(biāo),瀏覽PCB板的2D仿真圖,如下圖,瀏覽仿真圖的時(shí)候也有些選項(xiàng)可配置,例如顯示正反面、綠油顏色、焊盤(pán)顏色等。
圖28 瀏覽仿真圖
點(diǎn)擊窗口上方的光繪圖標(biāo),可以生產(chǎn)gerber文件,并進(jìn)入制板說(shuō)明與計(jì)價(jià)的界面。
圖29 生產(chǎn)gerber文件
制板說(shuō)明中,有制板廠報(bào)價(jià)時(shí)需要的主要參數(shù),填寫(xiě)好,在窗口的右側(cè)就會(huì)生成報(bào)價(jià),保存成訂單,接下來(lái)就可以下單打樣了,不過(guò)這次沒(méi)有體驗(yàn)該部分,想必跟網(wǎng)上購(gòu)物一樣,填好快遞地址,支付寶轉(zhuǎn)賬什么吧。
體驗(yàn)的時(shí)候還發(fā)現(xiàn),如果選擇了中文登陸網(wǎng)頁(yè),在點(diǎn)擊生產(chǎn)gerber的時(shí)候就會(huì)出現(xiàn)以下提示,點(diǎn)擊提示中的gerber也無(wú)法跳轉(zhuǎn)到gerber下載界面,必須的在主頁(yè)或者個(gè)人頁(yè)面中將語(yǔ)言設(shè)置成英文,才能進(jìn)入圖28界面。
本來(lái)我以為這是軟件的一個(gè)bug,但在原作者交流過(guò)以后,他表示,這個(gè)設(shè)計(jì)只要為了掙外國(guó)人的錢(qián),所以就特意設(shè)置提醒中文用戶(hù)去其他平臺(tái)訂購(gòu)PCB。
換句話說(shuō),這里是原作者為了更方便的掙外國(guó)人的錢(qián)而特意設(shè)置的。這種只掙歪國(guó)仁錢(qián)的國(guó)產(chǎn)品牌的清流,和某想那種美帝良心比起來(lái),境界高了不知道多少。
圖30異常提示
點(diǎn)擊圖28中的download gerberfiles可以下載gerber文件,這樣子的話就可以將制板文件發(fā)給你任何熟悉的供應(yīng)商那兒去制作了。下載的gerber文件是壓縮包的形式提供的,解壓出來(lái)的文件是常規(guī)的gerber文件格式,如下圖,其中就已經(jīng)包含了鉆孔文件了,都是一鍵完成的,比較方便,不需要像cadence那樣手動(dòng)設(shè)置后多次生成。
圖31gerber文件
導(dǎo)出來(lái)的gerber文件使用制版廠最常用的gerber編輯工具cam350導(dǎo)入,如下圖,導(dǎo)入過(guò)程沒(méi)有任何報(bào)錯(cuò),說(shuō)明easyeda生成的gerber文件是標(biāo)準(zhǔn)文件,沒(méi)有兼容性問(wèn)題。
圖32 cam350中的顯示
從窗口右上角(賬號(hào)右邊)的按鈕可進(jìn)入BOM for project,點(diǎn)擊生產(chǎn)BOM,點(diǎn)擊export可以導(dǎo)出CSV格式的BOM
圖33 BOM生產(chǎn)操作
從窗口右上角(賬號(hào)右邊)的按鈕可進(jìn)入generates pick and place file,點(diǎn)擊可下載CSV格式貼片用坐標(biāo)文件,CSV格式的坐標(biāo)文件可以使用excel打開(kāi),內(nèi)容和AD9生成的坐標(biāo)文件無(wú)異,如下圖。
圖34坐標(biāo)文件生產(chǎn)操作
圖35 打開(kāi)坐標(biāo)文件
至此,按照AD9的操作思路,體驗(yàn)了一遍easyeda,過(guò)程中走了不少?gòu)澛?,現(xiàn)在整理一下使用easyeda的正確操作流程:新建工程——》新建原理圖——》畫(huà)原理圖——》過(guò)程中發(fā)現(xiàn)應(yīng)用庫(kù)存中沒(méi)有想要的元器件——》設(shè)計(jì)原理圖庫(kù)與封裝庫(kù)——》原理圖完成——》將工程轉(zhuǎn)換成PCB圖——》將PCB圖保存進(jìn)工程——》話PCB圖——》生產(chǎn)gerber文件——》導(dǎo)出坐標(biāo)文件和BOM。
這次畫(huà)的demo比較簡(jiǎn)單,不知道應(yīng)用對(duì)復(fù)雜板卡設(shè)計(jì)的支持怎樣,不過(guò)有看到網(wǎng)友的STM32F103的開(kāi)發(fā)板項(xiàng)目,想必支持平時(shí)常用的板卡設(shè)計(jì)是游刃有余的。體驗(yàn)后的整體感覺(jué)是easyeda操作界面上去繁留簡(jiǎn),容易上手,對(duì)工程的管理也比較科學(xué),最重要的是easyeda中云的理念和開(kāi)源硬件的理念(硬件開(kāi)源涉及的問(wèn)題比較多,與目前比較成熟的軟件開(kāi)源相比,還有很長(zhǎng)的路要走。)是值得每個(gè)硬件設(shè)計(jì)者去推崇的。這是一款值得大家去使用的好產(chǎn)品,而且在這個(gè)平臺(tái)上能獲得的好處也是顯而易見(jiàn)的,誰(shuí)用誰(shuí)知道。