Arduinoda kodlamada takılan olursa yardımcı olabilirim

Katılım
18 Kas 2021
Mesajlar
28
Puanları
1
Yaş
15
Arduino kodlamasında takılan olursa buraya gelsin.
Arduino kodlamasında takılan olursa ücretsiz bir şekilde kodunu buraya yazabilir.
 
Kral ben yıllardır bu işi yapıyorum daha böyle bir başlık açmadım. Forum böyle kullanılmaz. Sorunu olan başlık açar cevabı olan cevap verir. Bilgiliysen forumu takip edebilirsin. İnsanlara yardım etmek güzel şey sonuçta.
 
Arduino kodlamasında takılan olursa buraya gelsin.
Arduino kodlamasında takılan olursa ücretsiz bir şekilde kodunu buraya

Arduino kodlamasında takılan olursa buraya gelsin.
Arduino kodlamasında takılan olursa ücretsiz bir şekilde kodunu buraya yazabilir.
Merhabalar. Benim dönem ödevim sepıc konvertör ile güç kaynağı yapımı 24 v giriş 0-60V2A çıkış olacak. Devreyi proteusta tasarladım fakat arduino kodunu yazamıyorum zaman da çok az kaldığı için yardım istemek zorundayım. İnşallah yardımcı olursunuz
 
Merhabalar. Benim dönem ödevim sepıc konvertör ile güç kaynağı yapımı 24 v giriş 0-60V2A çıkış olacak. Devreyi proteusta tasarladım fakat arduino kodunu yazamıyorum zaman da çok az kaldığı için yardım istemek zorundayım. İnşallah yardımcı olursunuz
Yazdığın taslak kodları atarsan sevinirim daha hızlı yardımcı olabilirim
 
Arduino kodlamasında takılan olursa buraya gelsin.
Arduino kodlamasında takılan olursa ücretsiz bir şekilde kodunu buraya yazabilir.
Merhaba bundan 2sene önce arduino uno ile 4-20ma sinyal jeneratörü yapmıştım düzgün stabilize çalışıyor, buna ayrıyeten 0-10v da ilave etmek istiyorum kodları burda açık Paylaşım.
Madem bu yazılım konusunda iddialısınız benim yazılıma da bir el atın size zahmet. 😊
 
Merhaba bundan 2sene önce arduino uno ile 4-20ma sinyal jeneratörü yapmıştım düzgün stabilize çalışıyor, buna ayrıyeten 0-10v da ilave etmek istiyorum kodları burda açık Paylaşım.
Madem bu yazılım konusunda iddialısınız benim yazılıma da bir el atın size zahmet. 😊
Maalesef yardımcı olabilceğimi sanmıyorum
 
Arduino kodlamasında takılan olursa buraya gelsin.
Arduino kodlamasında takılan olursa ücretsiz bir şekilde kodunu buraya yazabilir.
hocam merhaba, canbus shield ve arduino arasında bir iletişim kurup bu sistemle endüstriyel bir servo motor sürmek istiyorum. Fakat arduino üzerinden hız/konum gibi parametreleri hangi değerlere hangi biçimde atayacağımı bilmiyorum. yardımcı olma şansınız var mı?
 
Uygulamada 2 Motor kullanıyorum ancak 1 Motorun MZ80 den ileri-geri gitmesini sağladım ancak 10k potansiyometre ile de hızını ayarlayamadım. Kullandığım motor sürücü BTS7960B bu kodda nerede yanlış yapıyorumda potansiyometre devreye giremiyor yardımcı olur musunuz





#define R1PWM 5
#define L1PWM 6
#define R1EN 7
#define L1EN 8

#define R2PWM 9
#define L2PWM 10
#define R2EN 11
#define L2EN 12

#define sensor 2
#define sensorarka 3
int pot1;
int ayar;

void setup() {
Serial.begin(9600);
pinMode(R1PWM,OUTPUT);
pinMode(L1PWM,OUTPUT);
pinMode(L1EN,OUTPUT);
pinMode(R1EN,OUTPUT);
digitalWrite(R1EN,HIGH);
digitalWrite(L1EN,HIGH);
Serial.begin(9600);
pinMode(R2PWM,OUTPUT);
pinMode(L2PWM,OUTPUT);
pinMode(L2EN,OUTPUT);
pinMode(R2EN,OUTPUT);
digitalWrite(R2EN,HIGH);
digitalWrite(L2EN,HIGH);
pinMode(sensor,INPUT);
pinMode(sensorarka,INPUT);
}


void loop() {
pot1=analogRead(A0);
ayar=map(pot1,0,1023,0,255);
if((digitalRead(sensor)==1)&&(digitalRead(sensorarka)==0)&&(pot1>0))
{

analogWrite(R1PWM,ayar);
analogWrite(L1PWM,0);
digitalWrite(R1PWM,HIGH);
digitalWrite(L1PWM,LOW);
digitalWrite(R2PWM,LOW);
digitalWrite(L2PWM,HIGH);
}

if((digitalRead(sensor)==0)&&(digitalRead(sensorarka)==1)&&(pot1>0)){

analogWrite(L1PWM,ayar);
analogWrite(R1PWM,0);
digitalWrite(L1PWM,HIGH);
digitalWrite(R1PWM,LOW);
digitalWrite(R2PWM,HIGH);
digitalWrite(L2PWM,LOW);
}


}
 
Arduino kodlamasında takılan olursa buraya gelsin.
Arduino kodlamasında takılan olursa ücretsiz bir şekilde kodunu buraya yazabilir.
iyi çalışmalar arduino uno+ 2x tb6600 + 2x nema23 step motorlar bir pan tilt sistemi yaptım. jostick ile kumanda ediyorum. motorların kalkışının sert olması çekimleri olumsuz etkiliyo. yavaş kalkışı ve yavaş duruşu kodlara nasıl ekleyebilirim.
kod:
#include <AccelStepper.h> //accelstepper library
AccelStepper stepper(1, 8, 9); // direction Digital 9 (CCW), pulses Digital 8 (CLK)
AccelStepper stepper2(1, 10, 11); // direction Digital 11 (CCW), pulses Digital 10 (CLK)


//Pins
const byte Analog_X_pin = A0; //x-axis readings
const byte Analog_Y_pin = A1; //y-axis readings
const byte Analog_R_pin = A2; //r-axis readings
const byte LED_pin = 3; //PWM output for LED

//Variables
int Analog_X = 0; //x-axis value
int Analog_Y = 0; //y-axis value
int Analog_R = 0; //r-axis value

int Analog_X_AVG = 0; //x-axis value average
int Analog_Y_AVG = 0; //y-axis value average
int Analog_R_AVG = 0; //r-axis value average

int Analog_R_Value = 0; //this is used for the PWM value

void setup()
{

//SERIAL
Serial.begin(9600);
//----------------------------------------------------------------------------
//PINS
pinMode(Analog_X_pin, INPUT);
pinMode(Analog_Y_pin, INPUT);
pinMode(Analog_R_pin, INPUT);
pinMode(LED_pin, OUTPUT);
//----------------------------------------------------------------------------
InitialValues(); //averaging the values of the 3 analog pins (values from potmeters)
//----------------------------------------------------------------------------
//Stepper parameters
//setting up some default values for maximum speed and maximum acceleration
stepper.setMaxSpeed(5000); //SPEED = Steps / second
stepper.setAcceleration(1000); //ACCELERATION = Steps /(second)^2
stepper.setSpeed(500);
delay(500);
//----------------------------------------------------------------------------
stepper2.setMaxSpeed(5000); //SPEED = Steps / second
stepper2.setAcceleration(1000); //ACCELERATION = Steps /(second)^2
stepper2.setSpeed(500);
delay(500);

}

void loop()
{
ReadAnalog();
stepper.runSpeed(); //step the motor (this will step the motor by 1 step at each loop indefinitely)
stepper2.runSpeed();
}

void ReadAnalog()
{
//Reading the 3 potentiometers in the joystick: x, y and r.
Analog_X = analogRead(Analog_X_pin);
Analog_Y = analogRead(Analog_Y_pin);
Analog_R = analogRead(Analog_R_pin);

//if the value is 25 "value away" from the average (midpoint), we allow the update of the speed
//This is a sort of a filter for the inaccuracy of the reading
if(abs(Analog_X-Analog_X_AVG)>25)
{
stepper.setSpeed(5*(Analog_X-Analog_X_AVG));
}
else
{
stepper.setSpeed(0);
}
//----------------------------------------------------------------------------
if(abs(Analog_Y-Analog_Y_AVG)>25)
{
stepper2.setSpeed(5*(Analog_Y-Analog_Y_AVG));
}
else
{
stepper2.setSpeed(0);
}
//----------------------------------------------------------------------------
if(abs(Analog_R-Analog_R_AVG)>25)
{
Analog_R_Value = map(Analog_R, 0, 1023, 0, 255); //10 bit ADC (0-1023) and 8 bit PWM (0-255)
analogWrite(LED_pin, Analog_R_Value); //modify the PWM value
}
}

void InitialValues()
{
//Set the values to zero before averaging
float tempX = 0;
float tempY = 0;
float tempR = 0;
//----------------------------------------------------------------------------
//read the analog 50x, then calculate an average.
//they will be the reference values
for(int i = 0; i<50; i++)
{
tempX += analogRead(Analog_X_pin);
delay(10); //allowing a little time between two readings
tempY += analogRead(Analog_Y_pin);
delay(10);
tempR += analogRead(Analog_R_pin);
delay(10);
}
//----------------------------------------------------------------------------
Analog_X_AVG = tempX/50;
Analog_Y_AVG = tempY/50;
Analog_R_AVG = tempR/50;
//----------------------------------------------------------------------------
Serial.print("AVG_X: ");
Serial.println(Analog_X_AVG);
Serial.print("AVG_Y: ");
Serial.println(Analog_Y_AVG);
Serial.print("AVG_R: ");
Serial.println(Analog_R_AVG);
Serial.println("Calibration finished");
}
 

Forum istatistikleri

Konular
129,835
Mesajlar
930,600
Kullanıcılar
452,663
Son üye
Yılmaz Çetiner

Yeni konular

Çevrimiçi üyeler

Geri
Üst