조작적 조건화는 동물이 보상을 얻기 위해 행동을 수행하는 방법을 배우는 실험 심리학에서 사용되는 고전적인 패러다임입니다. 이러한 패러다임을 이용하면 학습곡선을 추출하고, 반응시간을 정확하게 측정할 수 있습니다. 여기에서는 동물 위치를 실시간으로 추적하면서 자유롭게 움직이는 마우스에 대해 조작적 조절을 수행할 수 있는 완전 3D 인쇄 가능 장치에 대해 설명합니다.
여기 또는 여기에서 3D 프린팅 모델을 찾을 수 있습니다.
Figures/EXPLODED VIEW.jpg에는 조립 방식에 대한 직관적인 다이어그램이 있습니다. 우리는 Cura 4.0을 사용하여 중간 해상도(100μm), 속도 90mm/s, 충전율 20%로 모든 구성 요소를 인쇄했습니다. OC 챔버의 디자인은 매우 간단하므로 거의 모든 프린터가 전체 챔버를 성공적으로 인쇄할 수 있을 만큼 충분히 정밀합니다.
모든 구성 요소 목록은 여기에서 확인할 수 있습니다. BOM
OC 챔버
카메라
배달
추가로 다음이 필요합니다:
Figures/diagram_scheme.png에 설명된 대로 모든 구성 요소를 연결합니다.
Raspberry Pi(RPI)에 소프트웨어를 설치하려면 Raspian OS 폴더에 전체 코드를 다운로드하거나 복사하면 됩니다.
파이썬
아두이노
Arduino UNO에서 skinner.ino라는 스케치를 컴파일하고 로드합니다.
용량성 센서 임계값을 보정하려면 skinnerCapacitiveTest라는 Arduino 스케치를 로드합니다. 이 기능은 직렬 포트 용량성 센서 값을 인쇄합니다. 마우스 터치를 감지하려면 적절한 임계값을 설정하는 것이 도움이 됩니다.
터미널에서 코드 유형을 실행하려면 다음을 수행하십시오.
cd h ome p i o c_chamber \ or replace with the folder path containing the scpript
python3 cvConditioningTracking.py
또는 IDLE IDE에서 cvConditioningTracking을 열고 F5를 누릅니다.
사용자는 cvConditioningTracking.py 파일의 처음 25줄에 있는 변수 값을 편집하여 실험의 일부 하위 수준 매개변수를 사용자 정의할 수 있습니다. 해당 매개변수에 대한 자세한 설명은 파일 자체에 제공됩니다.
챔버는 훈련 모드와 순열 모드의 두 가지 모드로 실험을 실행할 수 있습니다. 사용자는 cvConditioningTracking 파일의 매개변수 작업을 편집하여 두 가지 모드 중 하나를 선택할 수 있습니다. 두 가지 모드의 세부 사항과 차이점은 논문에서 확인할 수 있습니다.
실험이 시작되면 곧 실행될 실험에 대한 몇 가지 기본 정보를 수집하는 GUI가 사용자에게 표시됩니다.
제목: 현재 마우스에 대한 식별자가 포함된 문자열입니다. 비워두면 파일이 저장되지 않습니다.
파일 경로: 실험 파일을 저장할 위치입니다. 출력은 데이터 세트 섹션에 설명된 대로 실험 데이터 세트가 포함된 두 개의 .txt 파일로 구성되며 DATA 및 DATAtracker 폴더에 저장됩니다. 사용자는 PC에서 위치를 검색할 수 있으며, 필드가 비어 있는 경우 기본값은 현재 작업 디렉터리입니다.
REC 파일 이름: 비디오 녹화를 저장하는 데 사용할 이름이 포함된 문자열입니다. 비워두면 파일이 저장되지 않습니다.
REC 파일 경로: 마우스 위치와 활성 영역이 포함된 오버레이로 비디오 녹화를 저장하는 위치입니다. 사용자는 PC에서 위치를 검색할 수 있으며, 필드가 비어 있는 경우 기본값은 현재 작업 디렉터리입니다.
조건: 실험 조건. 실험에 제시될 자극 목록입니다. 하나 이상의 조건을 쉼표로 구분하여 지정할 수 있습니다.
여기에 지정된 모든 조건은 무작위 순서로 표시됩니다.
기준: 시험을 활성화하기 위해 마우스가 활성 영역에 머무르는 데 필요한 프레임 수입니다. 20프레임 = 1초
레벨: 챔버의 활성 영역과 비활성 영역을 분리하는 선의 수직 위치를 선택합니다. 값은 챔버 높이로 정규화됩니다. 0 = 챔버 바닥, 1 = 챔버 상단, 0.5(기본값) = 챔버 중간
교정: 카메라 교정을 위해 실험 시작 시 사용할 프레임 수입니다. 배경 위에서 마우스를 더 잘 추적하려면 실험 시작 시 카메라를 보정하는 것이 중요합니다.
다음 파일의 첫 번째 줄을 편집하면 다른 사용자 정의 옵션을 사용할 수 있습니다.
보다 복잡한 시각적 자극을 사용하려면 LCD 디스플레이에서 작동하는 코드의 백본 버전을 찾을 수 있습니다. 코드를 실행하려면 Psychopy2가 필요합니다. RPI에 Psychopy를 설치하려면 다음 지침을 따르세요. Psychopy가 설치되면 Psychopy IDE에서 cvConditioningTracking.py를 열고 코드를 실행하세요. 이 코드에는 선택한 이미지를 표시하는 데 사용할 수 있는 LCD.py라는 모듈이 포함되어 있습니다. 현재 코드는 테스트되지 않은 버전인 스텁이며 데모 목적으로 실행됩니다.
데이터 세트 폴더에는 본 논문에서 설명한 6개 주제의 원시 데이터가 포함되어 있습니다. 각 주제는 자체 폴더에 포함되어 있으며 CAGE-LABEL-GENO 구성표를 사용하여 코딩됩니다. 또한 Python에서 txt 출력 파일을 pandas 데이터 프레임으로 읽는 방법에 대한 예가 포함된 두 개의 Jupyter Notebook이 있습니다.
장치에 대한 자세한 설명은 여기에서 찾을 수 있습니다: 마우스의 자동화된 작동 컨디셔닝을 위한 3D 인쇄 가능 장치
정보 및 문제 해결이 필요하면 주저하지 말고 다음 주소로 문의하세요.