2024/2/19

幫朋友DIY陽台型新風機(6)升級盛仕達超靜音8寸管道風機

上回幫朋友裝一台臨時的DIY新風機,由於效果很好,朋友不打算再花幾萬元請人安裝台廠新風機了,於是推薦他消音器+遙控風機的二代機方案,但朋友覺得消音器不美觀,決定買盛仕達最頂級的超靜音遙控風機:

特貨,走私人集運,運費就花了7百多台幣。

直接從深圳的盛仕達工廠出貨,不是從賣家發。

上次買兩台遙控風機,賣家發錯變成線控款,這次再三叮囑要遙控款,結果還是發錯,變成線控款😢...


舊版這種三針接頭,無法與新版的遙控模組相容,也就是賣家補寄遙控模組也無效...

跟賣家協商看是要客訴換貨呢(來回海運由賣家負責),或者賠200rmb,賣家選後者。收到賠款後,就能拆封了:

裡面就是一台普通的8寸風機+海綿,外包烤漆鐵皮:

來到安裝現場,免出力錘鑽鑽孔,打膨脹螺絲:

固定風機後,安裝濾網支架與濾網、風管,完工~~~

調速器轉45度,風速計實測風量約207 CMH,對3人家庭來說夠了。

安裝心得:

1. 比起消音器+普通風機的效果, 超靜音風機並沒有比較安靜,但價格卻是2倍,所以CP值很低。

2. 毛重超過10公斤,運費也很貴。

3. 以後風機老化需要更換,也只能整台換,不能單換風機。

4. 機器笨重,加上支架設計不良,只適合吊頂安裝,壁掛安裝很難施工。

5. 擔心高張力螺絲不夠力,所以改用膨脹螺絲+鎚鑽,結果就是假日施工可能會被抗議。

總之,又貴又難裝,唯一的優點是風機與消音器一體化,外觀比較好看而已...

這次幫朋友DIY新風機,總成本約7千多元,應該幫他省了不少錢,最重要的是日後耗材便宜,這才是最省錢的地方😄

全目錄:

幫朋友DIY陽台型新風機(1)副廠HEPA選用及簡測
幫朋友DIY陽台型新風機(2)利用陽台照明迴路新增室外插座
幫朋友DIY陽台型新風機(3)製作風機支架與濾網支架
幫朋友DIY陽台型新風機(4)製作落地窗簡易擋板
幫朋友DIY陽台型新風機(5)安裝當天

2024/2/17

每天用電磁爐煮開水的用電量估算

上回還在想免煮開水就能改善飲水口感的方法,今天先用功率計來測一下用電磁爐煮開水到底成本高不高。

測試條件如下:
電磁爐:1300w米家電磁爐,火力開80。
水壺:牛頭牌4公升304不鏽鋼笛音壺
水量:2000cc
室溫:25度

煮滾後立刻停火,耗電量是0.21度。

如果火力全開,耗電量仍是0.21度。

由於煮開水的耗電量會受水溫影響(冬季較耗電),假設全年平均水溫25度,每人每天飲水2000cc,那麼每個月的耗電量就是6.3度,每年是76.65度,假設電價每度2.7元,全年成本是207元....

嗯,很便宜,實在不值得在免煮這個小問題上鑽研....

PS:如果水壺每次裝水量是3000cc或更多的話,相信耗電量會更低,因為可以少掉一些對不鏽鋼茶壺加熱的成本。

第一次用Gemini 1.5寫Google Apps Script以進行Google 試算表的自動化

 

為了自動列出雲端硬碟上某個資料夾的使用者,問了ChatGPT一個問題:

我有一個google試算表。試算表的B1儲存格存放的資料是一個google雲端硬碟上的資料夾的連結,例如:
https://drive.google.com/drive/u/0/folders/XXXXXXXXXXXXXXXXXXXX
我需要一個script來完成以下工作:

1. 先清除B2:B100的資料。
2. 在B2顯示資料夾名稱。
3. 在B3顯示資料夾所有者。
4. 在B4、B5、B6...列出資料夾編輯者。
5. 列完編輯者之後,接著再列出檢視者。
 

ChatGPT給的程式碼執行後一直出現錯誤,無法順利執行,再三反饋給ChatGPT,多次修改後仍無效,放棄。

想到Google幾天前啟用的Gemini 1.5,以下是Gemini的答案與修改過程:

好的,以下是一個可以完成您需求的 Google Apps Script:

```
function getFolderInfo() {
  // 清除 B2:B100 的資料
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.getRange('B2:B100').clearValues();

  // 取得資料夾 ID
  var folderId = sheet.getRange('B1').getValue().match(/folders\/(.*)/)[1];

  // 取得資料夾資訊
  var folder = DriveApp.getFolderById(folderId);

  // 顯示資料夾名稱
  sheet.getRange('B2').setValue(folder.getName());

  // 顯示資料夾所有者
  sheet.getRange('B3').setValue(folder.getOwner().getEmail());

  // 顯示資料夾編輯者
  var editors = folder.getEditors();
  for (var i = 0; i < editors.length; i++) {
    sheet.getRange('B' + (4 + i)).setValue(editors[i].getEmail());
  }

  // 顯示資料夾檢視者
  var viewers = folder.getViewers();
  for (var i = 0; i < viewers.length; i++) {
    sheet.getRange('B' + (4 + editors.length + i)).setValue(viewers[i].getEmail());
  }
}
```

這個 Script 的執行方式如下:

1. 在 Google 試算表中,開啟 Script 編輯器。
2. 將上述程式碼貼到 Script 編輯器中。
3. 儲存 Script。
4. 在 Script 編輯器中,點選執行按鈕。

執行 Script 後,試算表中的 B2:B100 儲存格就會顯示出您指定的資料夾的相關資訊。

以下是 Script 的詳細說明:

* `getFolderInfo()` 函式是 Script 的入口點。
* `sheet.getRange('B2:B100').clearValues()` 這一行用於清除 B2:B100 儲存格中的資料。
* `var folderId = sheet.getRange('B1').getValue().match(/folders\/(.*)/)[1]` 這一行用於取得資料夾 ID。
* `var folder = DriveApp.getFolderById(folderId)` 這一行用於取得資料夾物件。
* `sheet.getRange('B2').setValue(folder.getName())` 這一行用於顯示資料夾名稱。
* `sheet.getRange('B3').setValue(folder.getOwner().getEmail())` 這一行用於顯示資料夾所有者。
* `var editors = folder.getEditors()` 這一行用於取得資料夾編輯者陣列。
* `for (var i = 0; i < editors.length; i++) { sheet.getRange('B' + (4 + i)).setValue(editors[i].getEmail()) }` 這一行用於顯示資料夾編輯者。
* `var viewers = folder.getViewers()` 這一行用於取得資料夾檢視者陣列。
* `for (var i = 0; i < viewers.length; i++) { sheet.getRange('B' + (4 + editors.length + i)).setValue(viewers[i].getEmail()) }` 這一行用於顯示資料夾檢視者。

希望這個 Script 能夠滿足您的需求。

我:執行後出現錯誤訊息:TypeError: sheet.getRange(...).clearValues is not a function

Gemini:

出現這個錯誤訊息的原因是,您使用的 Google Apps Script 版本太舊了。在舊版本的 Google Apps Script 中,`sheet.getRange()` 方法沒有 `clearValues()` 函式。

要解決這個問題,您需要將 Google Apps Script 版本更新到最新版本。更新方法如下:

1. 在 Google 試算表中,開啟 Script 編輯器。
2. 點選 **資源** > **管理 Script 版本**。
3. 在 **版本** 對話方塊中,點選 **更新**。

更新 Google Apps Script 版本後,您應該就可以正常執行 Script 了。

如果您不想更新 Google Apps Script 版本,也可以使用以下方法來清除 B2:B100 儲存格中的資料:

```
var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getRange('B2:B100');
range.clearContent();
```

`clearContent()` 方法的效果與 `clearValues()` 方法相同,但它適用於所有版本的 Google Apps Script。

採用Gemini提供的第二個方案,修改程式碼之後就能順利執行了,不虧是自家產品,對自家的試算表有較好的支援。

相較於GhatGPT,Gemini第二次回覆就成功了,而且每段程式碼還一一解釋,非常適合學習電腦語言,超棒der~~~

 

2024/2/13

住宅通風不良導致全家甲醛中毒案例...

認知決定命運,如果對住宅通風的重要性缺乏認知,有可能上新聞...

這戶人家的情況這麼嚴重的原因,除了設計師使用了廉價、有毒的板材之外,最大的原因可能是:

1. 24小時關窗使用空調,導致甲醛與甲苯在室內累積到很高濃度,二氧化碳與氡氣大概率也很高。

2. 沒有使用任何機械通風設備來改善室內通風。