스케일 변환
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 등 숫자형 변수에 사용할 수 있습니다.
