地科系系電更新日常

![img_0746](https://jimmylab-images.seisblue.com/uploads/2018/09/img_0746-e1537703966569.jpg) 地科系系電是 2012 年建置的,也是我來讀大學的第三年,大一的時候還得特地去學校另一側的計算機中心借教室,在那個又熱又悶蚊子又多的地下室上兩三個小時的課。 ![img_0749](https://jimmylab-images.seisblue.com/uploads/2018/09/img_0749.jpg) 教室內有 32 台電腦與 1 台講師電腦,內建學生最討厭的中控系統,最特別的是電腦螢幕可以收起來變成一般教室,不過那個桌子可是滑鼠殺手。 ![img_0750](https://jimmylab-images.seisblue.com/uploads/2018/09/img_0750.jpg) 雖然這些電腦以現在的眼光來看是有些老舊,螢幕也不是主流的 1080p 寬螢幕,但其 i5 CPU 規格 2C 4T 3.33GHz 還是可以打敗現在的 Celeron 文書機的。 ![img_0754](https://jimmylab-images.seisblue.com/uploads/2018/09/img_0754-e1537704172617.jpg) 最近也剛更換投影機,色彩飽和度與流明度都很好,教室配線也全面支援 HDMI 介面,希望 VGA 在這幾年快點淘汰掉。 ![img_0751](https://jimmylab-images.seisblue.com/uploads/2018/09/img_0751.jpg) 每台電腦都是安裝雙系統,Windows 與 Ubuntu,最近全面從 Ubuntu 14.04 升上 Ubuntu 16.04,Ubuntu 裡面安裝的軟體也同步更新到最新,有 GMT 5 與 Matlab 2018b,並且私心將 VS Code 也塞了進去,但為了向下相容,所有舊版本的軟體並沒有移除,至於 Windows 嘛 … 聽說不要動比較好。 暑假跟 Leo 在作業系統升級過程中,有些電腦並沒有很順利,有沒讀到網路卡的、 Kernel Panic 的、開機磁區不夠大的,還好以前有 Live USB 救援系統的經驗,所以最後都成功升級了,其中有一台升到了 Ubuntu 18.04 作為觀察,等時機成熟後再全面升級。 在一旁默默看著教室一切的古代投影機: ![img_0753](https://jimmylab-images.seisblue.com/uploads/2018/09/img_0753.jpg)

<span title='2018-09-23 00:12:42 +0800 +0800'>September 23, 2018</span>&nbsp;·&nbsp;1 分鐘&nbsp;·&nbsp;Jimmy

Pycharm 好用的 plugin

強大的 Pycharm 有著許多好用的功能,但還是有些功能是官方沒有照顧到的,官方有開放社群開發插件,這邊介紹幾個覺得還不錯的第三方插件 String Manipulation 這個插件可以幫你完成一些煩人的大小寫轉換、變數排序、自動生成序列等神奇的功能,選項在右鍵選單內: ![01](https://jimmylab-images.seisblue.com/uploads/2018/08/01.png) [BashSupport](https://plugins.jetbrains.com/plugin/4230-bashsupport) 就是bash,但系統沒有預裝,所以要自己從網站上下載 ![bash](https://jimmylab-images.seisblue.com/uploads/2018/08/bash.png) [Fortran](https://plugins.jetbrains.com/plugin/9699-fortran) 可以支援 fortran 77 的固定格式跟 fortran 95 之後的格式 ![fortran](https://jimmylab-images.seisblue.com/uploads/2018/08/fortran.png) 如何安裝第三方插件: 到Pycharm 插件庫挑選第三方插件 下載並解壓縮會有一個 .jar 檔 到 Settings 搜尋 plugin 並選取 Install plugin from disk… ![02](https://jimmylab-images.seisblue.com/uploads/2018/08/02.png) 選取解壓縮的 .jar 檔,如果檔案在桌面可以選上方視窗圖示 ![03](https://jimmylab-images.seisblue.com/uploads/2018/08/03.png) 重開 Pycharm 就可以使用新的插件了

<span title='2018-08-01 11:02:25 +0800 +0800'>August 1, 2018</span>&nbsp;·&nbsp;1 分鐘&nbsp;·&nbsp;Jimmy

地震儀動手做!

寶特瓶地震儀 ![00](https://jimmylab-images.seisblue.com/uploads/2018/07/00.png) ========================================================================================================================= 需要的材料 保特瓶 x1 透明文件夾 x 0.5 漆包線(AWG 24) 5m x1, 2m x1 圓柱形強力磁鐵(12x10mm) x1 迴紋針 x2 2KΩ 電阻 x1 測試夾 x2 3.5mm 四極頭音源線 x0.5 大量訂購可參考:( 需 3~5 天出貨 ) http://www.yd-tech.com.tw/ 需要的工具 剪刀/美工刀 膠帶 尖嘴鉗 斜口鉗 螺絲起子/筷子 打火機 三用電表 手機或平板 寶特瓶地震儀分三個部分 中心管 彈簧組 耳機線 中心管製作方法 切開透明文件夾 ![014](https://jimmylab-images.seisblue.com/uploads/2018/07/014.png) 2. 捆成柱狀,要比瓶口略小,預留給線圈通過 ![022](https://jimmylab-images.seisblue.com/uploads/2018/07/022.png) 3. 用5m漆包線纏繞在1/3的位置,至少60圈,並預留出瓶口長度 ![03_1](https://jimmylab-images.seisblue.com/uploads/2018/07/03_1.png) ![03_2](https://jimmylab-images.seisblue.com/uploads/2018/07/03_2.png) 4. 將中心管置入瓶內,確保漆包線夠長 ![042](https://jimmylab-images.seisblue.com/uploads/2018/07/042.png) 彈簧組製作方法 用2m漆包線纏繞螺絲起子做成彈簧,約100圈 ![062](https://jimmylab-images.seisblue.com/uploads/2018/07/062.png) ![052](https://jimmylab-images.seisblue.com/uploads/2018/07/052.png) 2. 將迴紋針凹成下面形狀 ![071](https://jimmylab-images.seisblue.com/uploads/2018/07/071.png) ![07_1](https://jimmylab-images.seisblue.com/uploads/2018/07/07_1.png) 3. 將迴紋針凹成下面形狀 ![081](https://jimmylab-images.seisblue.com/uploads/2018/07/081.png) 4....

<span title='2018-07-17 14:28:39 +0800 +0800'>July 17, 2018</span>&nbsp;·&nbsp;1 分鐘&nbsp;·&nbsp;Jimmy

PyQt5 Signal / Slot 機制入門

利用 Qt Designer 設計好程式的介面以後,要如何讓程式有反應呢?這時候就得寫背後的邏輯了。 Qt 使用 Signal / Slot 機制來達到物件之間的通訊,就有點像是拿電線接起來一樣。例如將開關接上燈泡後,按下開關就會亮,而將連結斷開後,燈泡就不會對按鈕有反應了。 不知道怎麼安裝可以先看這篇 安裝PyQt5 + 連動Pycharm ![012](https://jimmylab-images.seisblue.com/uploads/2018/07/012.png) 現在我們先設計一個簡易的加法器如下,物件名稱需更改以利辨識 ![02_1](https://jimmylab-images.seisblue.com/uploads/2018/07/02_1.png) Qt Designer 右下角有個 Signal/Slot Editor,先按 + 產生一組訊號連結 在 Sender 欄可以選發送訊號的物件,Signal 欄可以選擇觸發條件,Receiver 欄可以選擇接收訊號的物件,Slot 可以選擇執行的動作 ![02_2](https://jimmylab-images.seisblue.com/uploads/2018/07/02_2.png) 我們希望按下 Clear 按鈕後,三個 lineEdit 框可以被清空,所以設定當 pushButton\_clear 被 clicked() 的時候,lineEdit\_A 要 clear() 自己的資料 ![02_3](https://jimmylab-images.seisblue.com/uploads/2018/07/02_3.png) 剩下 lineEdit\_B 與 lineEdit\_ANS 都比照辦理 現在將圖形介面存檔成adder.ui,並利用 PyUIC 將 adder.ui 轉換成 adder.py 另外寫一個 call_adder.py 來啟動程式: <pre class="brush: python; title: ; notranslate" title=""> import sys from PyQt5.QtWidgets import QMainWindow, QApplication from adder import * class AdderMainWindow(QMainWindow, Ui_MainWindow): def __init__(self, parent=None): super(AdderMainWindow, self)....

<span title='2018-07-12 23:16:43 +0800 +0800'>July 12, 2018</span>&nbsp;·&nbsp;1 分鐘&nbsp;·&nbsp;Jimmy

安裝PyQt5 + 連動Pycharm

如果要在 Python 上面寫 GUI 介面,推薦跨平台跨語言的Qt,它有 App Designer 可以直接排版後自動生成程式碼。用 signal / slot 作為物件之間的溝通,簡化了很多開發上的複雜度。Qt 底層為 C++ ,所以執行速度較快。PyQt5 只支援 Python 3 ,且不向下支援 PyQt4。 Pycharm 算是個人蠻推薦的 Python IDE,有強大的除錯功能,可以自動整理程式碼,並可以與許多工具結合,比用單純的文字編輯器好很多。 以下專注在 Windows 10,Pycharm 灌好的前提下,如何安裝 PyQt5 並連動: 打開 Settings ![011](https://jimmylab-images.seisblue.com/uploads/2018/07/011.png) 2. 找到 Project Interpreter 並按 + (有 Anaconda 的要先按綠色圈圈取消) ![021](https://jimmylab-images.seisblue.com/uploads/2018/07/021.png) 3. 在上方搜尋 PyQt5 並安裝 PyQt5 與 pyqt5-tools ![031](https://jimmylab-images.seisblue.com/uploads/2018/07/031.png) 4. 回到 Settings 找到 External Tools 並按 + ![041](https://jimmylab-images.seisblue.com/uploads/2018/07/041.png) 5. 設定 Qt Designer 如圖,找到 designer.exe (通常在 Python 根目錄下的 Lib/site-package/pyqt5-tools 裡面),Arguments 設定為`$FileName$`,Working directory 設定為`$ProjectFileDir$`,可以用 Insert Macro 裡面找 ProjetFileDir 生成!...

<span title='2018-07-09 15:53:55 +0800 +0800'>July 9, 2018</span>&nbsp;·&nbsp;1 分鐘&nbsp;·&nbsp;Jimmy

Windows 10 PPPoE 連線建立方式

在外宿拿到房東給的帳號密碼後,通常代表你的宿舍使用 PPPoE (Point-to-Point Protocol Over Ethernet) 的連線方式,中華電信的 ADSL (Asymmetric Digital Subscriber Line) 也是利用這種方式連線。要如何在 Windows 10 的新介面上建立連線呢? 打開 「網路和共用中心」 按下開始功能表,開啟Windows設定 ![01](https://jimmylab-images.seisblue.com/uploads/2018/07/01.png) 點選「網路和網際網路」 ![02](https://jimmylab-images.seisblue.com/uploads/2018/07/02.png) 點選「撥號」 ![03](https://jimmylab-images.seisblue.com/uploads/2018/07/03.png) 建立PPPoE 連線 點選 「設定新連線」 ![04](https://jimmylab-images.seisblue.com/uploads/2018/07/04.png) 選擇「連線到網際網路」並按「下一步」 ![05](https://jimmylab-images.seisblue.com/uploads/2018/07/05.png) 點選 「寬頻(PPPoE)」 ![06](https://jimmylab-images.seisblue.com/uploads/2018/07/06.png) 輸入帳號與密碼以建立連線,並記住密碼以利下次使用 ![07](https://jimmylab-images.seisblue.com/uploads/2018/07/07.png) 出現剛才建立的「寬頻連線」即建立成功 ![08](https://jimmylab-images.seisblue.com/uploads/2018/07/08.png) - - - - - - 如何快速連線 左鍵按下「網路」圖示,並按下剛剛建立的「寬頻連線」 ![09](https://jimmylab-images.seisblue.com/uploads/2018/07/09.png) 左鍵按下寬頻連線 ![10](https://jimmylab-images.seisblue.com/uploads/2018/07/10.png) 點選「連線」即可上網 ![11](https://jimmylab-images.seisblue.com/uploads/2018/07/11.png) [Win 10 PPPoE連線建立方式.pdf](https://jimmylab.wordpress.com/wp-content/uploads/2018/07/win-10-pppoee980a3e7b79ae5bbbae7ab8be696b9e5bc8f.pdf "Win 10 PPPoE連線建立方式")

<span title='2018-07-05 03:11:41 +0800 +0800'>July 5, 2018</span>&nbsp;·&nbsp;1 分鐘&nbsp;·&nbsp;Jimmy

Python 新手上路包

最近太多人問怎麼學 Python 了 我覺得為了學 Python 專門去選學校的課太多此一舉了 畢竟選課會有時間上跟聽不聽得懂的問題 個人覺得用線上資源學習是最快最有效的~~~ ![pylogo](https://jimmylab-images.seisblue.com/uploads/2018/01/pylogo.png) 一個一個回答有點麻煩 就在這裡整理一些學習 Python 的資源吧 首先要先安裝 Python 直譯器 3.7 還是 2.7 ? 除非你有舊的程式要跑 不然一律用最新的~ 建議安裝 Python 套件管理程式 Anaconda ![logo-dark](https://jimmylab-images.seisblue.com/uploads/2018/01/logo-dark.png) 灌 Anaconda 的好處是 一開始他會幫你灌大部分會用到的套件包 包括新手最會卡關的 pip 與自家 conda 套件管理程式 也可以作套件包的版本控制 讓你不同專案的套件包不會打架 特別是有舊程式要維護的時候更重要 Anaconda 環境設定可以參考這篇 Win10下用Anaconda安裝TensorFlow ![MATLAB_R2013a_Win8_screenshot.png](https://jimmylab-images.seisblue.com/uploads/2018/01/matlab_r2013a_win8_screenshot.png) 再來可以選用一個[文字編輯器](https://zh.wikipedia.org/zh-tw/%E6%96%87%E6%9C%AC%E7%BC%96%E8%BE%91%E5%99%A8) (Text Editor) 或是[整合開發環境](https://zh.wikipedia.org/zh-tw/%E9%9B%86%E6%88%90%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83) (IDE) 如果是 [Vi](https://zh.wikipedia.org/zh-tw/Vi) 派的我也不反對 (有神快拜) 不知道 IDE 是什麼的話,看看 [Matlab](https://www.mathworks.com/products/matlab.html) 的介面 就是一個很標準的 IDE IDE可以幹嘛? 可以參考下面這篇文章 IDE、編輯器的迷思| iThome 你可以用 Anaconda 幫你灌好的 Spyder 這個 IDE 是仿效 MATLAB 介面做成的...

<span title='2018-01-05 00:17:23 +0800 +0800'>January 5, 2018</span>&nbsp;·&nbsp;2 分鐘&nbsp;·&nbsp;Jimmy

使用 Microsoft Azure Notebook 執行 Python

假如要 Demo Python 程式碼 Microsoft 有提供一個好用的雲端服務叫 Microsoft Azure Notebooks ![](https://jimmylab-images.seisblue.com/uploads/2019/03/image-1.png) 要用這個服務之前要先有 [Microsoft 帳號](https://login.live.com/tw) 如果沒有帳號可以先申請 整個 Microsoft Azure Notebooks 是用 Jupyter 建構出來的 Jupyter 是一個互動式的筆記本,可以將程式碼與註記放在一起,方便與讀者互動 Python 初學者可以先複製官方的教學 Python for DS 101 進去以後按 Clone,把教學範例複製到自己的 Library 裡面 ![Python2.png](https://jimmylab-images.seisblue.com/uploads/2017/11/python2.png) 打開 [01.Basics.ipynb](https://notebooks.azure.com/rheartpython/libraries/PythonDS101/html/01.Basics.ipynb) 就可以看到 Jupyter 的主畫面了 ![Basics.png](https://jimmylab-images.seisblue.com/uploads/2017/11/basics.png) 最簡單要記得的就是執行一個區段按 Shift+Enter 照著這個 Basics 走過一遍就會知道怎麼用了 另外常用到的功能是在前面加 ! 就可以執行 Shell 指令: ``` !pip install soundfile # Install pysoundfile package for wav I/O </p>這在需要額外安裝套件很有用的,或是想要執行一些 grep 或 awk 的指令,不過好像只有在 Azure Notebooks 才行,拿到其他 Jupyter Notebook 不一定能用。 剩下的就看這個 [Cheatsheet](https://s3....

<span title='2017-12-07 16:40:34 +0800 +0800'>December 7, 2017</span>&nbsp;·&nbsp;1 分鐘&nbsp;·&nbsp;Jimmy

中央大學 授權軟體

假如你是中央大學的學生 學校有提供下面這些免費資源喔~ ![ncu2.png](https://jimmylab-images.seisblue.com/uploads/2017/11/ncu2-e1537698376414.png) 第一個就是授權軟體了 中央大學授權軟體 要先用 portal帳號登入 裡面比較常用的有 Windows 10 企業版 跟 Office 2016 (PC, MAC) 剩下還有一些比較冷門的像 SAS, Matlab, AutoDesk, EndNote 授權軟體一覽表 如果要使用 ISO 檔安裝系統,請參考利用 Rufus 製作開機碟說明。 ISO 檔使用說明 ![](https://jimmylab-images.seisblue.com/uploads/2017/11/ncu.png) - - - - - - 帳號的部分 學校有提供 G suite (Google apps)服務 裡面有 Gmail 帳號、無限大的 Google Drive (這個最重要了) 跟其他 Google 服務 ![](https://jimmylab-images.seisblue.com/uploads/2017/11/g-suite1.png) 還有提供 [Office 365](https://ncu.edu.tw/office365/login) 裡面有 Onedrive 1TB, Office 行動版 APP, 和一些神奇的 Microsoft 軟體 例如 Power Apps 可以做一些簡單的網頁 APP ![](https://jimmylab-images.seisblue.com/uploads/2017/11/office3651.png)...

<span title='2017-11-03 22:16:35 +0800 +0800'>November 3, 2017</span>&nbsp;·&nbsp;1 分鐘&nbsp;·&nbsp;Jimmy

Ubuntu 16.04.3 在使用 Nvidia 1080ti 下noveau 報錯的解決方法

最近重灌電腦的時候發現Ubuntu怎麼變得這麼難灌 會一直出現下面這個錯誤然後凍結 <pre class="brush: bash; gutter: false; title: ; notranslate" title=""> kernel: [11.896160] nouveau 0000:01:00.0: fifo: SCHED_ERROR 08 [] 網路上查到了解決方法 BIOS boot menu 選沒有 UEFI 的那個 USB碟 在boot選項將 nomodeset 加到最後 並將三個橫線刪除 之後就可以正常安裝了

<span title='2017-10-30 01:26:53 +0800 +0800'>October 30, 2017</span>&nbsp;·&nbsp;1 分鐘&nbsp;·&nbsp;Jimmy