def __init__(self): self._buttonListener = ButtonListener() self._solenoid = SolenoidController() self._answerReader = AnswerReader() self._language = Language.KOREA self._dictionary = BrailleDictionary() self._soundController = SoundController(self._language) self._buttonListener.set_on_click_lang_change_btn(self.on_click_lang_change) self._buttonListener.set_on_click_mode_change_btn(self.on_click_mode_change) self._buttonListener.set_on_click_next_btn(self.on_click_next) self._buttonListener.set_on_click_pre_btn(self.on_click_pre) self._buttonListener.set_on_click_submit_answer_btn(self.on_click_submit_answer) self._game_mode = GameMode.EDUCATION self._problem = []
class TeachingMachine: def __init__(self): self._buttonListener = ButtonListener() self._solenoid = SolenoidController() self._answerReader = AnswerReader() self._language = Language.KOREA self._dictionary = BrailleDictionary() self._soundController = SoundController(self._language) self._buttonListener.set_on_click_lang_change_btn(self.on_click_lang_change) self._buttonListener.set_on_click_mode_change_btn(self.on_click_mode_change) self._buttonListener.set_on_click_next_btn(self.on_click_next) self._buttonListener.set_on_click_pre_btn(self.on_click_pre) self._buttonListener.set_on_click_submit_answer_btn(self.on_click_submit_answer) self._game_mode = GameMode.EDUCATION self._problem = [] def process(self): self._soundController.play_intro() self.on_click_next() def on_click_submit_answer(self): print("on_click_submit_answer") if self._game_mode == GameMode.QUIZ: answer = self._answerReader.read_and_get_abbreviation() print(answer) print(self._problem) fail_flag = 0 if (len(self._problem) - 2) == len(answer): for i in range(len(answer)): if self._problem[i + 2] != answer[i]: fail_flag += 1 else: fail_flag += 1 if fail_flag == 0: self._soundController.say_answer_success() self.quiz() else: self._soundController.say_answer_fail() else: self._soundController.say_answer_error() def on_click_lang_change(self): print("on_click_lang_change") if self._language == Language.KOREA: self._language = Language.ENGLISH self._dictionary.change_language(Language.ENGLISH) self._soundController.change_language(Language.ENGLISH) else: self._language = Language.KOREA self._dictionary.change_language(Language.KOREA) self._soundController.change_language(Language.KOREA) self._soundController.say_selected_language() def on_click_mode_change(self): print("on_click_mode_change") if self._game_mode == GameMode.EDUCATION: self._solenoid.off_all() self._game_mode = GameMode.QUIZ self._soundController.say_selected_mode(self._game_mode) self.quiz() else: self._game_mode = GameMode.EDUCATION self._soundController.say_selected_mode(self._game_mode) self.on_click_next() def on_click_next(self): print("on_click_next") if self._game_mode == GameMode.EDUCATION: braille = self._dictionary.next_word() self.educate(braille) elif self._game_mode == GameMode.QUIZ: self.quiz() def on_click_pre(self): print("on_click_pre") if self._game_mode == GameMode.EDUCATION: braille = self._dictionary.pre_word() self.educate(braille) elif self._game_mode == GameMode.QUIZ: self.quiz() def educate(self, braille): print("educate braille : ", braille) self._solenoid.off_all() for j in range(2, len(braille)): self._solenoid.on(braille[j]) self._soundController.play_braille(braille) def quiz(self): self._soundController.say_question_prefix() self._problem = self._dictionary.random_word() self._soundController.play_braille(self._problem) self._soundController.say_question_suffix()
from braille_controller import SolenoidController from time import sleep solenoid = SolenoidController() solenoid.on(0) # parm : 0 ~ 5 sleep(3) solenoid.off(0) from braille_controller import AnswerReader reader = AnswerReader() result = reader.read() print("reade result : ", result) from braille_controller import ButtonListener listener = ButtonListener() def on_click(): print("call back") listener.set_on_click_lang_change_btn(on_click) while True: x = 0
from braille_controller import SolenoidController from time import sleep solenoid = SolenoidController() def on_all(): solenoid.on(0) # parm : 0 ~ 5 sleep(1) solenoid.on(1) sleep(1) solenoid.on(2) sleep(1) solenoid.on(3) sleep(1) solenoid.on(4) # sleep(1) # solenoid.on(5) def off_all(): sleep(1) solenoid.off(0) # parm : 0 ~ 5 sleep(1) solenoid.off(1) sleep(1) solenoid.off(2) sleep(1) solenoid.off(3) sleep(1) solenoid.off(4) # sleep(1) # solenoid.off(5) #solenoid.on(0)
from braille_controller import SolenoidController from time import sleep from braille_controller import AnswerReader solenoid = SolenoidController() reader = AnswerReader() while True: result = reader.read() print("reade result : ",result) for i in range(6): if result[i] == True: solenoid.on(i) else: solenoid.off(i) # sleep(1)