Akdeniz31
Üye
- Katılım
- 6 May 2020
- Mesajlar
- 54
- Puanları
- 1
Merhaba, Matlab function bloğuna bir kod yazmam lazım. Kodda döngüleri oluşturamadım. Yardımcı olabilecek var mı?
U bilgisi giriş, x ve y çıkışlar. u bilgisi adc ile alınacak bir batarya gerilim bilgisi. Yapmak istediğim işlem batarya 0.9 değerinin altındaysa 1.2'ye kadar şarj olsun. 1.2 olunca 0.9 oluncaya kadar deşarj olsun. 0.9'a deşarj olduktan sonra tekrar 1.2'ye şarj olsun. Kodu şöyle oluşturmaya çalıştım:
1- u, 0.9 değerine eşitse,
2- u 1.2 değerine gelene kadar x=1 y=0 olsun
3- u 1.2 değerine eşit büyükse veya 1.2 ile 0.9 arasındaysa
4- u 0.9’a eşit olana kadar y=1 x=0 olsun
5- 0.9 değerine gelince 1. satıra giderecek sürekli aynı işlemleri yaptıracak.
Döngüler oluşturamadım. Aşağıda yazmaya çalıştığım kod var. koddaki hatalarımda ve algoritmada yarcımcı olur musunuz ?
while (1)
if (u<=0.9) %Şarj
for u=1.2
x=1;
y=0;
end
elseif (u>=1.2) || (u>0.9) && (u<1.2) %Deşarj
for u=0.9
x=0;
y=1;
end
else
x=0;
y=0;
end
end
end
U bilgisi giriş, x ve y çıkışlar. u bilgisi adc ile alınacak bir batarya gerilim bilgisi. Yapmak istediğim işlem batarya 0.9 değerinin altındaysa 1.2'ye kadar şarj olsun. 1.2 olunca 0.9 oluncaya kadar deşarj olsun. 0.9'a deşarj olduktan sonra tekrar 1.2'ye şarj olsun. Kodu şöyle oluşturmaya çalıştım:
1- u, 0.9 değerine eşitse,
2- u 1.2 değerine gelene kadar x=1 y=0 olsun
3- u 1.2 değerine eşit büyükse veya 1.2 ile 0.9 arasındaysa
4- u 0.9’a eşit olana kadar y=1 x=0 olsun
5- 0.9 değerine gelince 1. satıra giderecek sürekli aynı işlemleri yaptıracak.
Döngüler oluşturamadım. Aşağıda yazmaya çalıştığım kod var. koddaki hatalarımda ve algoritmada yarcımcı olur musunuz ?
while (1)
if (u<=0.9) %Şarj
for u=1.2
x=1;
y=0;
end
elseif (u>=1.2) || (u>0.9) && (u<1.2) %Deşarj
for u=0.9
x=0;
y=1;
end
else
x=0;
y=0;
end
end
end