2018年7月18日

用imagej加上Macro巨集畫輔助線測量蛋徑

這個文章要從這篇《用openscad畫個蛋》說起。

因為要用OpenScad畫出蛋,那麼勢必需要測量一顆蛋在不同高度的徑長。一種方式大概就是直接在蛋上劃線,再用游標尺夾蛋測量。不過如果要畫的蛋只有照片的話,那麼怎樣做比較方便呢?

我提議就用imagej來畫輔助線測量吧,但是需要用到Macro來劃線。我在Imagej的Macro資料庫裡找到Grid_Overlay這個Macro,看一看我只要修改一些就可以符合需求。

如果是直接從Blog的文章複製代碼過去的話,作法是在Imagej的功能表選擇Plugins/Macro/Record...,把代碼貼到視窗後,再按下Create。接著在新出現的視窗上找到Run按下去就可以執行了。

執行後的畫面,可以在畫面中劃上規律格線,有了參考格線就比較方便劃線測量了。




   requires("1.43j");
   color = "red";
   nLines = 6;
   if (nImages==0) run("Boats (356K)");
   run("Remove Overlay");
   width = getWidth;
   height = getHeight;
   tileHeight = height/(nLines+1);
   tileWidth = tileHeight;
   xoff=tileWidth;
   while (true && xoff<width) { // draw vertical lines
      makeLine(xoff, 0, xoff, height);
      run("Add Selection...", "stroke="+color);
      xoff += tileWidth;
   }
   yoff=tileHeight;
   while (true && yoff<height) { // draw horizonal lines
      makeLine(0, yoff, width, yoff);
      run("Add Selection...", "stroke="+color);
      yoff += tileHeight;
   }
   run("Select None");

用openscad畫個蛋



同事之前帶個專題研究,要用3D印表機印出蛋模型來做一些研究。不過要怎麼做個蛋模型呢?於是我出了主意,不如用OpenScad來畫蛋吧。只要修改一些參數,就可以做出不同的蛋模型。

以下這個程式碼,基本上只要修改r0到r10的參數就可以了。
整個程式的意義是畫出11個圓形,每個圓形間隔100(由參數space設定),每個圓形的半徑就分別是r0到r10。11個圓形疊在一起後,再用hull把那些圓形包起來,就會像一個卵形。下圖的粉紅色區塊就是還沒有被hull包起來的樣子。接下來再用一些程式把2D平面的卵形變成立體的卵。







r0 = 0;
r1 = 413/2;
r2 = 534/2;
r3 = 567/2;
r4 = 557/2;
r5 = 498/2;
r6 = 372/2;
r7 = 0;
r8 = 0;
r9 = 0;
r10 = 0;

space =100;
trans = max (r0,r1, r2,r3,r4,r5,r6,r7,r8,r9,r10);
bigSqure = 4000;
rotate_extrude(covexity= 10){
    intersection(){
    square(bigSqure);
    rotate([0,0,90])
    translate([trans,0,0])
        hull(){
        translate ([space*0,0,0])  circle(r0,center = true,$fn = 100);
        translate ([space*1,0,0])  circle(r1,center = true,$fn = 100);
        translate ([space*2,0,0])  circle(r2,center = true,$fn = 100);
        translate ([space*3,0,0])  circle(r3,center = true,$fn = 100);
        translate ([space*4,0,0])  circle(r4,center = true,$fn = 100);
        translate ([space*5,0,0])  circle(r5,center = true,$fn = 100);
        translate ([space*6,0,0])  circle(r6,center = true,$fn = 100);
        translate ([space*7,0,0])  circle(r7,center = true,$fn = 100);
        translate ([space*8,0,0])  circle(r8,center = true,$fn = 100);
        translate ([space*9,0,0])  circle(r9,center = true,$fn = 100);
        translate ([space*10,0,0])  circle(r10,center = true,$fn = 100);


        }
    }
}
    

2018年6月28日

用Google Expeditions的AR 把世界帶進教室

去年用Google Expeditions玩了VR(詳見《用iPad+Google expeditions,用VR在教室裡做校外教學看生態系》),覺得在生態系教學上用處很大呢,今年繼續玩下去。

我的感想是,雖然很新奇好玩,但是不建議整節課都在玩,大概用15-20分鐘是極限,時間再延長,學生會疲累。所以我安排成三個段落,分別是水域生態系、陸域生態系和環境議題。


今年在重新打開Expeditions時,發現它新增了AR的功能,操作情形可以看Google的官方廣告影片-
Expeditions AR - Bringing the world into the classroom
https://youtu.be/-DYqlaMWTVg
看這影片標題「把世界帶進教室」是不是很吸引人呢!

在App裡,可以用AR關鍵字找到資料庫現有的模型



教師端的畫面可以看到這個模型的樣子,學生端則是用AR模式





嗯....這個看起來不知所云的畫面就是學生正在用AR看動物,我是搭配陸域生態系的VR模式讓學生們看非洲動物大遷徙的VR畫面,然後再給他們看這些非洲動物的AR畫面






這個AR功能要觸發,必須要另外印製出實體的文件讓APP可以掃描。

在上圖學生散亂的桌面上,每組都有一張特別圖形紙,就是用那個來觸發AR。不過要看什麼圖形,其實還是老師機廣播決定的。


這個文件的位置是在expeditions的app裡左上角有三條線按下去,出現如圖的畫面,在最底下的「協助放置標記」





打開之後會看到這個畫面 ,在第一項那個以電子郵件傳送標記或是將標記列印出來的下面有一張圖,點下去就會開啟一個PDF檔(Markers.pdf),就把那個檔案印出來就好,一共有七頁。
每張都長的不一樣,不過每一張看到的AR模型卻又都一樣。目前我也不知道為什麼要分成七張不同的圖形?



可以看哪些模型呢?這是電子顯微鏡的模型,所以講到顯微鏡的時候,用AR就可以玩一下。



或者有一些是動物的模型,大概就是分類和生態的課程可以拿來用。



還有很多人體模型,像這就是可以在桌面出現巨大的子宮



有子宮當然也有這個超巨大的OO,感覺很能提振精神

2018年6月25日

紙製複式顯微鏡模型

用紙做複式顯微鏡,不是第一次,不過之前做的那個太麻煩,這一次做的簡單多了。

需要的材料要印製型紙,共兩張A4,用硬一點的雲彩紙比較好
檔案下載

目鏡用25mm的Google Cardboard透鏡一枚
物競用7mm的透鏡一枚

詳細製作過程,我拍攝成影片說明



幾個注意步驟,黏貼處和一般貼法不同,是把黏貼處放外邊




物鏡的凸面朝下,用黏土貼一圈固定



目鏡的平面朝下,用黏土固定三點



再蓋上三角固定片


觀察孔和目鏡是對在一起的,物鏡和玻片固定架是一起的。
整個顯微鏡分三節
第一節是觀察孔那一段
第二節是顯微鏡的本題,有目鏡物鏡那一段
第三節是有玻片放置架那段。


距離調整是門大學問,先把第三節套進第二節,物鏡那個底面對齊玻片放置架的空格頂端,也就是第二節和第三節大約重疊3公分。

第一節套進第二節,而第一節和第三節之間的距離大約是6公分,所以第一節和第二節重疊部分大約也是3公分

這是定焦的顯微鏡,要看清楚就要調整物鏡和標本之間的距離,也就是第二節和第三節之間重疊的程度。

2018年5月20日

模擬鳥翅拍翅的電子機械裝置

上個月清大生科的林立元教授提供了我一組特殊裝置,是圖中的藍色盒子。內部相當於是兩組Arduino,不過其電路板是自己組的,已經把輸入和輸出的功能寫入板子中,舉例來說,可以接上一個輸入的壓力感測器,切換模式可以從盒上的LED條顯示壓力值,或是將壓力值轉換成控制伺服馬達的角度值。輸入模組也可以換成麥克風、酒精偵測、光敏電阻等...。

我拿到這個裝置後,就放在桌上讓學生上課時可以來玩一玩,一日突然想到可以再組合其他的裝置來加值應用。圖中加上了智高積木和科學Maker的科學積木,這樣就可以用壓力感測來控制它。

智高積木組成的東西,則是如這篇《積木拼出脊椎動物架構》組成的鳥翅模型,按壓壓力感測則鳥翅就可以揮動。





光是這樣揮揮,我覺得不夠,所以手繪了一些羽毛,看看會不會生動一點。不過鳥羽毛畫得太鳥,一點都不像。



所以就從網上找了鳥翅的照片剪貼上去



整個模型的作動方式就用影片呈現吧

你可能對這有興趣

Related Posts Plugin for WordPress, Blogger...