2022年10月16日 星期日

Stable Diffusion UI

Stable Diffusion是最近一個非常流行的AI model,開源後不少人為此開發各種UI(User Interface)。

目前最多人使用的應該是 AUTOMATIC1111開發的stable-diffusion-webui,不過此UI安裝方式還是有點麻煩,對於電腦技術較差的人不太友善。

 

所以後來有人開發了cmdr2 / stable-diffusion-ui,此UI如同一般市面上的軟體一樣容易安裝。

下載壓縮檔後,解壓縮到C槽或D槽,然後執行"Start Stable Diffusion UI.cmd",接著就會開始自動安裝了。此軟體安裝可能要花不少時間。

安裝完成後要開始使用也是執行"Start Stable Diffusion UI.cmd",之後程式就會用瀏覽器執行Stable Diffusion UI。

如果要使用其它model,就將ckpt檔(有些model會用safetensors檔)放入stable-diffusion-ui\models\stable-diffusion

 

請注意,目前此軟體對AMD顯卡支援較差,如果是AMD顯卡可能跑不動。 


最後推薦一個近期發現的網站civitai,此網站提供各種model讓人挑選

https://civitai.com/

 

參考資料

Stable Diffusion Models

[討論] 猴子都會的AI繪圖軟體安裝教學

--VOLDY RETARD GUIDE--

高頻訊號線跨越不同參考層

高頻訊號線由於有return path的需求,所以傳輸線鄰近的參考層不能被分割。

如果真的不得不分割,最好加電容將兩個被分割的參考層結合起來。

 

參考資料 

PCB 設計同步分析 6 大隱藏技巧六 :完美你的高速訊號回流路徑

High-Speed Layout Guidelines

線性插值法在電學上的應用

如果有一個放大器輸出功率10 dBm時EVM = -17.6,20 dBm時EVM = -8.3,請問要如何求出功率17 dBm時EVM?

 

此時即可應用線性插值法,公式如下


 

 

 

 

x1 = 20 #功率20 dBm

x0 = 10 #功率10 dBm

x = 17 #功率17 dBm

y1 = -8.3 #功率20 dBm時的EVM

y0 = -17.6 #功率10 dBm時的EVM

帶入公式可得y = -9.46

由此可知功率17 dBm時EVM = -9.46 dB


2022年5月23日 星期一

Thermal Relief Pad的用途

 











 

上圖是一個SMD電容的焊盤,其中一端接地(GND),但接地端卻只是用三條連接線接地,這種設計就是Thermal Relief Pad

因為銅容易導熱與散熱,所以若不用Thermal Relief Pad,熱能就會快速傳輸到大面積鋪銅,GND Pad就不易加熱,焊接難度也會提高

 

但這種設計也有缺點,因為接地端沒有完全與鋪銅合體,相當於GND Pad與鋪銅之間存在電感與電阻 ,這對RF電路有明顯的影響。

所以若是用於RF電路,最好還是將接地端與鋪銅完全連接(如下圖),不要使用Thermal Relief Pad


 

2022年4月2日 星期六

PyVISA:一種能夠連接並控制GPIB界面的Python package

GPIB是一種連接測量儀器的界面,又稱為IEEE 488,通常用此界面對儀器下達SCPI指令。

PyVISA是一種能夠連接並控制GPIB界面的Python package,只要安裝了這個Package,即可利用Python對儀器下SCPI指令。

要使用PyVISA,首先應至NI的網站下載NI-VISA

https://www.ni.com/zh-tw/support/downloads/drivers/download.ni-visa.html

註:雖然PyVISA的網站指出也支援Keysight的VISA ,但我的經驗是Keysight的VISA容易有bug。除此之外,如果電腦同時安裝NI與Keysight的VISA,可能會衝突而產生bug。

接下來於Python中下以下指令來安裝PyVISA

pip install -U pyvisa
接下來即可用Python連接儀器
以下是一個簡單的程式,顯示目前有連接電腦的儀器的GPIB Address
import pyvisa
rm = pyvisa.ResourceManager()
print('GPIB Address is {}'.format(rm.list_resources())) #顯示已連接的GPIB Address
 
假設該程式顯示的GPIB Address是GPIB0::10::INSTR,可於程式中再增加以下程式碼
power = rm.open_resource('GPIB0::10::INSTR')  # connect to this GPIB address
print(power.query('*IDN?')) # query代表先write後read
power代表該GPIB Address連接的儀器
第二行是對程式下一個*IDN?的指令,然後再print出來。大多數的儀器會顯示該儀器的型號或版本。

 

 

2022年3月27日 星期日

AVG占用大量硬碟空間的bug

近日電腦的硬碟容量突然滿了,仔細一查才知道這是防毒軟體AVG的bug,在2017年時就有人遇到相同問題。

https://support.avg.com/answers?id=906b0000000DngaAAC

https://support.avg.com/answers?id=9060N000000Ec8sQAC

唯一的解決方法似乎只有徹底移除防毒軟體

AVG提供了移除工具"AVG Clear",能夠將防毒軟體的主程式與暫存檔徹底移除

https://support.avg.com/SupportArticleView?l=en&urlname=Uninstall-AVG-software-Clear-Remover

 

2022年3月26日 星期六

LC(電感與電容)並聯諧振頻率

與LC串聯相比,LC並聯諧振頻率的推倒過程略顯複雜。

 

LC並聯於諧振頻率有趨近於無限大的阻抗,且電感阻抗jωL,電容阻抗-j/ωC。

阻抗並聯公式為倒數相加再取倒數,由此可得以下式子。

提醒您,點擊圖片可放大


 接下來再取一次倒數,可得以下等式




 

由上式可知,若左方括號內結果為0,此式才會成立。

最後可推導出並聯諧振角頻率ω


 

 

 

 

 

 

再將等號左右兩邊同除以2π,即可得出並聯諧振頻率f


 

 

 

2022年3月12日 星期六

SCPI說明書的常見符號

1.括號 {}:代表括號內的指令是選項,可以選擇加入,也可以選不加入。

 

2.豎線 |:分隔多個選項,使用時必須選其中一個使用。

 

3.括號 []:此種括號內的指令即使省略還是會執行,所以輸入指令時無論有無加入均無差異。與括號 {}的差異在於{}內的指令有加與沒加入是有差異的。

 

4.括號 <>:此括號代表需填寫一個數值。例如<voltage>代表要填電壓,例如5V。


2022年3月5日 星期六

線上電路設計EasyEDA

EasyEDA是中國深圳嘉立創公司提供的線上電路設計平台,如果設計的電路沒太多機密的話可以參考此工具

2022年2月17日 星期四

一個好用的ARM晶片開發平台-Mbed

https://os.mbed.com/

Mbed是ARM提供的一種作業系統(OS)與開發平台

Mbed的網頁提供了線上IDE,只要註冊後點選該網頁右上角的Compiler,不用安裝任何軟體即可在網站上寫Mbed程式,相當方便,而且完全免費。

該網站於Hardware / Board中列舉了許多支援Mbed的單晶片開發版,可以買相同的板子來使用。

 

Mbed我覺得比FPGA方便很多,而且在軟體上完全不需要額外購買或安裝其它軟體,唯一的開銷只有開發版,可惜目前在台灣Mbed似乎不太流行。