|
@@ -167,7 +167,7 @@
|
|
|
<Param val="from exp settings" valType="str" updates="None" name="units"/>
|
|
|
</ImageComponent>
|
|
|
<CodeComponent name="code" plugin="None">
|
|
|
- <Param val="import sqlite3&#10;import os&#10;&#10;from time import sleep&#10;&#10;&#10;&#10;import streamlit as st&#10;&#10;from db.models import train&#10;&#10;from core.sig_chain.sig_receive import Receiver&#10;&#10;from core.sig_chain.device.connector_interface import Device&#10;&#10;from settings.config import settings&#10;&#10;&#10;&#10;# get train record&#10;os.path.dirname(__file__) + '/../data/' + subject&#10;con = sqlite3.connect(os.path.join(os.path.dirname(__file__), '../', 'sql_app.db'))&#10;&#10;cur = con.cursor()&#10;&#10;sql_param = "SELECT * FROM train ORDER BY start_time DESC"&#10;&#10;res = cur.execute(sql_param)&#10;&#10;exp_train = res.fetchone()&#10;&#10;cur.close()&#10;&#10;&#10;&#10;# connect device&#10;&#10;receiver = Receiver()&#10;&#10;config_info = settings.CONFIG_INFO&#10;&#10;receiver.select_connector(Device.NEO, 0.04, config_info)&#10;&#10;success = receiver.setup_connector()&#10;&#10;print(success)&#10;&#10;# begin to receive data from device.&#10;&#10;sleep(1)&#10;&#10;receiver.start_receive_wave()" valType="extendedCode" updates="constant" name="Before Experiment"/>
|
|
|
+ <Param val="import sqlite3&#10;import os&#10;import datetime&#10;from time import sleep&#10;&#10;import streamlit as st&#10;from db.models import train&#10;from device.sig_chain.sig_receive import Receiver&#10;from device.sig_chain.device.connector_interface import Device&#10;from device import utils&#10;from settings.config import settings&#10;&#10;&#10;# get train record&#10;con = sqlite3.connect(os.path.join(os.path.dirname(__file__), 'sql_app.db'))&#10;cur = con.cursor()&#10;sql_param = "SELECT * FROM train ORDER BY start_time DESC"&#10;res = cur.execute(sql_param)&#10;exp_train = res.fetchone()&#10;cur.close()&#10;&#10;# connect device&#10;receiver = Receiver()&#10;config_info = settings.CONFIG_INFO&#10;receiver.select_connector(Device.NEO, 0.04, config_info)&#10;success = receiver.setup_connector()&#10;print(success)&#10;&#10;# begin to receive data from device.&#10;sleep(1)&#10;receiver.start_receive_wave()&#10;" valType="extendedCode" updates="constant" name="Before Experiment"/>
|
|
|
<Param val="import * as sqlite3 from 'sqlite3';&#10;import {sleep} from 'time';&#10;import * as st from 'streamlit';&#10;import {train} from 'db/models';&#10;import {Receiver} from 'core/sig_chain/sig_receive';&#10;import {Device} from 'core/sig_chain/device/connector_interface';&#10;import {settings} from 'settings/config';&#10;con = sqlite3.connect("./sql_app.db");&#10;cur = con.cursor();&#10;sql_param = "SELECT * FROM train ORDER BY start_time DESC";&#10;res = cur.execute(sql_param);&#10;exp_train = res.fetchone();&#10;cur.close();&#10;receiver = new Receiver();&#10;config_info = settings.CONFIG_INFO;&#10;receiver.select_connector(Device.NEO, 0.04, config_info);&#10;success = receiver.setup_connector();&#10;console.log(success);&#10;sleep(1);&#10;receiver.start_receive_wave();&#10;" valType="extendedCode" updates="constant" name="Before JS Experiment"/>
|
|
|
<Param val="" valType="extendedCode" updates="constant" name="Begin Experiment"/>
|
|
|
<Param val="" valType="extendedCode" updates="constant" name="Begin JS Experiment"/>
|
|
@@ -176,10 +176,10 @@
|
|
|
<Param val="Py" valType="str" updates="None" name="Code Type"/>
|
|
|
<Param val="" valType="extendedCode" updates="constant" name="Each Frame"/>
|
|
|
<Param val="" valType="extendedCode" updates="constant" name="Each JS Frame"/>
|
|
|
- <Param val="" valType="extendedCode" updates="constant" name="End Experiment"/>
|
|
|
+ <Param val="receiver.stop_receive()" valType="extendedCode" updates="constant" name="End Experiment"/>
|
|
|
<Param val="" valType="extendedCode" updates="constant" name="End JS Experiment"/>
|
|
|
<Param val="" valType="extendedCode" updates="constant" name="End JS Routine"/>
|
|
|
- <Param val="" valType="extendedCode" updates="constant" name="End Routine"/>
|
|
|
+ <Param val="# set saver&#10;receiver.connector.set_saver()&#10;subject = exp_train[-1]&#10;path = utils.create_data_dir(subject, exp_train[0]) # owner_name, train_id&#10;filename = f"{subject}_{datetime.datetime.now().strftime('%H%M%S')}.bdf"&#10;receiver.connector.saver.set_edf_header(subject, filename, 5, path)" valType="extendedCode" updates="constant" name="End Routine"/>
|
|
|
<Param val="False" valType="bool" updates="None" name="disabled"/>
|
|
|
<Param val="code" valType="code" updates="None" name="name"/>
|
|
|
</CodeComponent>
|
|
@@ -412,7 +412,7 @@
|
|
|
<Param val="" valType="extendedCode" updates="constant" name="End Experiment"/>
|
|
|
<Param val="predict = 0;&#10;if ((predict === 1)) {&#10; feedback_time = 15;&#10;} else {&#10; if ((predict === 0)) {&#10; feedback_time = 2;&#10; }&#10;}&#10;" valType="extendedCode" updates="constant" name="End JS Experiment"/>
|
|
|
<Param val="" valType="extendedCode" updates="constant" name="End JS Routine"/>
|
|
|
- <Param val="# data = get_data()&#10;receiver.connector.receive_wave()&#10;data_from_buffer = receiver.get_data_from_buffer("classify_online")&#10;if data_from_buffer["status"] == "ok":&#10; raw_waves = data_from_buffer["data"]&#10; timestamps = data_from_buffer["timestamp"]&#10; # predict = pipeline(data)&#10; predict = 1&#10; if predict == 1:&#10; # 气动手指令&#10; feedback_time = 15&#10; elif predict == 0:&#10; # 气动手指令&#10; feedback_time = 2" valType="extendedCode" updates="constant" name="End Routine"/>
|
|
|
+ <Param val="# data = get_data()&#10;receiver.connector.receive_wave()&#10;data_from_buffer = receiver.get_data_from_buffer("classify_online", clear=False)&#10;if data_from_buffer["status"] == "ok":&#10; raw_waves = data_from_buffer["data"]&#10; timestamps = data_from_buffer["timestamp"]&#10; # predict = pipeline(data)&#10; predict = 1&#10; if predict == 1:&#10; # 气动手指令&#10; feedback_time = 15&#10; elif predict == 0:&#10; # 气动手指令&#10; feedback_time = 2" valType="extendedCode" updates="constant" name="End Routine"/>
|
|
|
<Param val="False" valType="bool" updates="None" name="disabled"/>
|
|
|
<Param val="algo" valType="code" updates="None" name="name"/>
|
|
|
</CodeComponent>
|