Ejemplo n.º 1
0
void StepperMotor::init(int speedRPM, int stepsPerRevolution) {
	this->gpio_MS1->setDirection(GPIO::OUTPUT);
	this->gpio_MS2->setDirection(GPIO::OUTPUT);
	this->gpio_MS3->setDirection(GPIO::OUTPUT);
	this->gpio_STEP->setDirection(GPIO::OUTPUT);
	this->gpio_SLP->setDirection(GPIO::OUTPUT);
	this->gpio_DIR->setDirection(GPIO::OUTPUT);
	this->gpio_EN->setDirection(GPIO::OUTPUT);
	this->gpio_LSW->setDirection(GPIO::INPUT);
	this->gpio_RSW->setDirection(GPIO::INPUT);
	this->threadRunning = false;

	this->stepsPerRevolution = stepsPerRevolution;
	// default to clockwise direction
	this->setDirection(StepperMotor::CLOCKWISE);
	// default to full stepping
	setStepMode(STEP_FULL);
	// the default number of steps per revolution
	setStepsPerRevolution(stepsPerRevolution);
	// the default speed in rpm
	this->setSpeed(speedRPM);
	this->enable();
	//wake up the controller - holding torque..
	this->wake();
}
Ejemplo n.º 2
0
void Clamp::updateClampMode(int index) {
	if (index == 0) { // STEP
		mode = STEP;
		update(MODIFY);
		emit setStepMode(true);
		emit setPlotMode(false);
		printf("Entering STEP mode\n");
	}
	else if (index == 1)	{ // RAMP
		mode = RAMP;
		minamp = 0;
		setParameter("Min Amplitude (pA)", QString::number(minamp * 1e12)); // initialized in A, display in pA
		update(MODIFY);
		emit setStepMode(false);
		plotFI = false;
		printf("Entering RAMP mode\n");
	}
}