반응형
blocks programming process
- 0. [가장 중요!!] sample program : create New Op Mode 후 Sample에서 원하는 프로그램 선택.
- 1. runtime setting(robot controller 하단 states box에 upload) : left bar의 Telemetry -> loop blocks에 call telemetry.addData 블록을 위치 후 key : “Time Passed”, number : left bar의 LinearOpMode에서 call (fileName).getRuntime 블록을 위치.
- + call telemetry.addData를 넣었다면,,? call Telemetry.update(새로운 data를 driver station에서도 볼 수 있도록 upload해주는 것)도 무조건 넣어야함.
- 2. DcMotor setting(left bar의 actuators에서 Dcmotor 중 선택) :
- 1) set (motorName) power로 모터 가동.(두 개를 제어하기 위해서는 dual block 이용.)
- 2) 모터를 반대로 가동하고 싶으면? power value 앞에 (.) or (-)
- 3) joy stick을 이용하고 싶으면? Ex) powerValue에 LeftStickY(joystick의 Y방향) 위치
- + wheel moving : init block에 set motor Direction to reverse 위치(모터의 초기방향조정)
- + call autoMove.sleep : 움직임 사이의 term (1000 milliseconds = 1 second)
- 3. moving servoMotor setting
- set (motorName) position로 위치 설정.(0(0 dgree)~1(180 dgree?))
- 4. color sensor
- 1) Ctrler config robot에서 Device Interface Module 중 I2C Devices에서 color sensor.
- 2) sensor -> color sensor -> init block에 call color.enableLed 위치
- 3) variables -> create variable 후 name 설정 -> loop blocks에 set (함수명) to 위치 후 value에 call color.rgbToColor 위치 -> red value에 (sensorName) Red, green value에,,, -> blue일 때 ~을 하고 싶다면,, if에 2가지 조건(&)으로 표현.
- 3-1) (생성한 함수가 받은 값) 중 saturation이 0.6이상
- color saturation color (생성한 함수 값) >= 0.6
- 3-2) (생성한 함수가 받은 값) 중 hue이 210이상 270미만
- color hue color (함수 값) >= 210 and color hue color (함수 값) < 270
- + HOW easier to use HSV in robot (RGB << HSV(색 범위로 구별하기 편리))
- 1) Hue value : which color in color wheel(색 자체를 하나의 값으로.)
- 2) Saturation : level of richness(얼마나 다채로운가)(0~1)
- 3) Value : level of lightness(얼마나 밝은가)(0~1)
- 5. encoder
- 1) STOP_AND_RESET_ENCODER : 초기설정, reset!
- 2) RUN_USING_ENCODER : power become percentage of maximum speed
- 3) RUN_TO_POSITION : use until target position is an encoder tick count
- + Modern 1440 ticks per revolution(NeverRest40 : 1120ticks, REV Hex : 2240ticks,,)
- 3-1) when use DcMotor : set TargetPosition value = ticks per revolution * n(n바퀴)
- -> when use REV Hex Motor : TargetPosition value = 1120, 2240, 4480,,,,
- -> 모터 bulit-in 측정이라서 매우 정확! 바퀴의 원주를 알면 정확히 원하는 위치 도달!
- 3-2) 모터가 targetPosition에 도달할 때까지 loop문을 수행하고 싶다면?
- (1) repeat
whileuntil로 교체. - (2) value값에 and block을 넣은 후 각각에 not block를 위치.
- (3) not block 뒤에 call (motorName).isBusy를 위치
- + 특정 모터가 움직일 때만 telemetry update : until loop내 call Telemetry.update 넣기.
- + telemetry? 원격측정. encoder, time도 telemetry로 측정 후 전송
- (1) repeat
- 6. VuMarks (use computer vision technology(Vuforia engine))
- 1) sample program : create New Op Mode 후 Sample에서 원하는 프로그램 선택.
- 2) 미리 구형되어 있는 set up을 제외하고 상황에 따른 모드를 구성.
참고 : https://www.youtube.com/playlist?list=PLEuGrYl8iBm4A4yrRcatGcK7q0od0LYov
반응형
'Project Process > KRC-FTC (Team TC(5031, 5048))' 카테고리의 다른 글
[FTC] REV robotics SRS programmer User's MANUAL (ENG) (0) | 2020.01.31 |
---|---|
[FTC] Making Vedio ( Team TC 5031 5048 ) (0) | 2020.01.29 |
[FTC] FTC block programming (4) - REV IMU sensor (0) | 2020.01.21 |
[FTC] FTC block programming (3) - 파일 저장 + Tip (확실한 정지방법) (0) | 2020.01.21 |
[FTC] FTC block programming (1) - 초기설정 및 구조설명 (0) | 2020.01.21 |