HilarYo Posted April 6, 2014 Report Share Posted April 6, 2014 Boas noites, Alguém me pode ajudar a chegar a uma expressão matemática? é o seguinte pretendo arranjar uma expressão que transforme um sinal analogico que varia de 0 a 1023 em tempo este tempo varia de 50 milisegundos a 3 segundos ou seja quando o valor analógico é 0 o tempo é 50 milisegundos e quando o valor analógico é 1023 o tempo é 3 segudos como chego a uma expressão para ver por exemplo se o valor analogico for x? Obrigado Link to comment Share on other sites More sharing options...
Warrior Posted April 6, 2014 Report Share Posted April 6, 2014 Não consegui perceber a pergunta. A transformação é linear? Link to comment Share on other sites More sharing options...
HilarYo Posted April 6, 2014 Author Report Share Posted April 6, 2014 por exemplo 1023 = 3 segundos = 3000 milisegundos 0 = 50 milisegundos agora preciso de arranjar uma formula que me ache um valor no meio automaticamente penso que se resolve com uma regra de três simples mas nao sei porque há uma diferença inicial de 50 milisegundos (0=50milisegundos) Link to comment Share on other sites More sharing options...
HappyHippyHippo Posted April 7, 2014 Report Share Posted April 7, 2014 ou é um interpolação que pretendes ou é mesmo a regra de três simples ... mas a pergunta não está bem apresentada regra de três simples : saber para um tempo X (resultado = Y) 1023 = 3000 - 50 X = Y Y = (2950 * X) / 1023 IRC : sim, é algo que ainda existe >> #p@p Portugol Plus Link to comment Share on other sites More sharing options...
HilarYo Posted April 7, 2014 Author Report Share Posted April 7, 2014 ou é um interpolação que pretendes ou é mesmo a regra de três simples ... mas a pergunta não está bem apresentada regra de três simples : saber para um tempo X (resultado = Y) 1023 = 3000 - 50 X = Y Y = (2950 * X) / 1023 Ma tenho que adicionar 50 ao resultado obtido porque senão tenho um défice: 1023 = 3000 - 50 X = Y Y + 50 = (2950 * X) / 1023 se for x = 0 -> (2950*0)/1023 = 0 + 50 = 50 se for x = 1023-> (2950*1023)/1023 = 2950 + 50 = 3000 Já esta resolvido muito obrigado Link to comment Share on other sites More sharing options...
Warrior Posted April 7, 2014 Report Share Posted April 7, 2014 Ok, algo importante de perceberes é que a Interpolação que estás a fazer é linear, existem inúmeros outros tipos de interpolação. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now