===== 스케일 변환 ===== ==== Scale ==== ''result = Scale(input, inmin, inmax, outmin, outmax)'' 입력값을 지정한 범위에서 다른 범위로 선형 변환합니다. result = (input - inmin) * (outmax - outmin) / (inmax - inmin) + outmin Dim adc As Integer Dim PwmOut As Integer Do adc = Adin(0) PwmOut = Scale(adc, 0, 4095, 0, 10000) Pwm 12, 1000, PwmOut Loop * 센서값, A/D 입력값, PWM 출력값 등의 범위 변환에 사용됩니다. * ''inmax''와 ''inmin''이 같으면 계산할 수 없습니다. * 입력값이 범위를 벗어나면 결과값도 범위를 벗어날 수 있습니다. ===== 값 제한 ===== ==== Limit ==== ''value = Limit(value, min, max)'' 입력값을 지정한 최소값과 최대값 범위 내로 제한합니다. * ''value'' 가 ''min'' 보다 작으면 ''min'' 을 반환합니다. * ''value'' 가 ''max'' 보다 크면 ''max'' 를 반환합니다. * 범위 내 값이면 원래 값을 그대로 반환합니다. 아날로그 값 처리, PWM 출력 제한, 속도 제한 등에 유용하게 사용할 수 있습니다. Dim speed As Integer speed = 120 speed = Limit(speed, 0, 100) Debug speed, Cr ' 결과 : 100 Dim pwm As Integer pwm = adcValue / 4 Pwm 0, Limit(pwm, 0, 1023) > ''Limit()'' 는 Integer, Long, Float 등 숫자형 변수에 사용할 수 있습니다. [[..:index|← CUBLOC2 목차로 돌아가기]]