今天將NeuroSky Mindwave Mobile的訊號接上Processing了,使用的是Andreas Borg的ThinkGear Java Socket (Github)。NeuroSky有出一個叫做ThinkGear的SDK。在Processing端有Jorge C. S. Cardoso 寫的Mindset Processing Library從Serial port讀取訊號,以及我使用的ThinkGear Java Socket,從127.0.0.1的port 13854讀取JSON訊號。
根據NeuroSky的ThinkGear SDK技術文件,ThinkGear分成ThinkGear Connector (連接Mindwave Mobile以及其他腦電波裝置)、以及ThinkGear Communication Driver(提供API連接電腦與ThinkGear Connector連接到的裝置)。因為ThinkGear只提供Mac與PC的API,其他平台則可以使用Serial Stream來讀取訊號(這大概也是為什麼Cardoso的library是讀取serial port吧!)
ThinkGear提供包含raw data、eSense自己發展出來(神秘的)演算法計算出的meditation level與attention level、blinkStrength、以及eeg訊號delta, theta, lowAlpha, highAlpha, lowBeta, highBeta, lowGamma, highGamma 幾個頻段。根據官方技術文件指出meditation與attention的值可以在0 – 100之間。正常值為40-60之間(neutral)、60-80為相對於某個神秘的人來說稍微提高(slightly elevated)、80-100之間則為顯著提高(elevated)。而當值在20-40之間為稍微低落(reduced)、0-20之間為顯著低落(strongly lowered)。Kiel Gilleade 在他的 blog 中指出這個兩個神秘的值其實在統計辨識上並沒有顯著差異。而Steve Fairclough則提到
EEG is affected by skull thickness, there are individual differences in alpha wave production etc. etc.
看來若要得到比較好的冥想數據也許直接看eeg訊號更好些?
目前的程式進展到將這些數據顯示在簡易的視覺界面上,並且另外建構了一個class儲存訊號。接下來要將這部分的code與David寫的gcode程式結合,將Processing作為gcode sender,用eeg控制噴頭的extrusion rate。
Leave a Reply