Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #if 1
- //reflectance kisa mqttlähetyksil v2?
- void zmain(void)
- {
- struct sensors_ ref;
- struct sensors_ dig;
- int viiva = 0;
- int nappi = 0;
- int ennenstarttia = 1;
- reflectance_start();
- reflectance_set_threshold(15000, 15000, 15000, 15000, 15000, 15000);
- IR_Start();
- int ajastin = 100;
- motor_start();
- motor_forward(0,0);
- while(true)
- {
- reflectance_digital(&dig);
- //print out 0 or 1 according to results of reflectance period
- printf("%5d %5d %5d %5d %5d %5d \r\n", dig.l3, dig.l2, dig.l1, dig.r1, dig.r2, dig.r3);
- printf("%d", viiva);
- if(SW1_Read() == 0){
- motor_forward(50, true);
- //
- send_mqtt("Zumo046/info", "nappi painettu, lahen menee");
- nappi = 1;
- IR_flush();
- }
- else if (dig.l3 == 1 && dig.l2 == 1 && dig.l1 == 1 && dig.r1 == 1 && dig.r2 == 1 && dig.r3 == 1 && viiva== 0 && nappi ==1 ) {
- motor_forward(0,0);
- // send_mqtt("Zumo046/info", "olen IR pauses");
- IR_wait();
- motor_forward(100, 100);
- ++viiva;
- ennenstarttia = 0;
- }
- else if (dig.l3 == 0 && dig.l2 == 0 && dig.l1 == 1 && dig.r1 == 1 && dig.r2 == 0 && dig.r3 == 0 && nappi == 1 && ennenstarttia == 0 && ajastin > 0) {
- //send_mqtt("Zumo046/info", "meen eteepain!");
- motor_forward(150, 1);
- ajastin--;
- }
- else if (dig.l3 == 0 && dig.l2 == 0 && dig.l1 == 1 && dig.r1 == 1 && dig.r2 == 0 && dig.r3 == 0 && nappi == 1 && ennenstarttia == 0 ) {
- //send_mqtt("Zumo046/info", "meen eteepain!");
- motor_forward(255, true);
- }
- else if (dig.l3 == 0 && dig.l2 == 0 && dig.l1 == 0 && dig.r1 == 1 && dig.r2 == 1 && dig.r3 == 0 && nappi ==1 && ennenstarttia == 0 ) {
- //send_mqtt("Zumo046/info", "vahan oikeelle");
- motor_turn(210, 180,true);
- ajastin = 100;
- }
- else if (dig.l3 == 0 && dig.l2 == 0 && dig.l1 == 0 && dig.r1 == 0 && dig.r2 == 1 && dig.r3 == 1 && nappi ==1 && ennenstarttia == 0) {
- motor_turn(200, 20, true);
- // send_mqtt("Zumo046/info", "paljon oikealle");
- }
- else if (dig.l3 == 0 && dig.l2 == 0 && dig.l1 == 0 && dig.r1 == 1 && dig.r2 == 1 && dig.r3 == 1 && nappi ==1 && ennenstarttia == 0) {
- // motor_turn(250, 0, true);
- //send_mqtt("Zumo046/info", "TOSI oikealle");
- motor_turn(250, 0, true);
- }
- else if (dig.l3 == 0 && dig.l2 == 0 && dig.l1 == 1 && dig.r1 == 1 && dig.r2 == 1 && dig.r3 == 1 && nappi ==1 && ennenstarttia == 0) {
- //send_mqtt("Zumo046/info", "TOOOOOSI oikeelle");
- motor_hardturnright(200, 60, true);
- //motor_turn(250, 0, true);
- }
- else if (dig.l3 == 0 && dig.l2 == 0 && dig.l1 == 0 && dig.r1 == 0 && dig.r2 == 0 && dig.r3 == 1 && nappi ==1 && ennenstarttia == 0) {
- motor_hardturnright(200,140, true);
- //send_mqtt("Zumo046/info", " oikeelle");
- //motor_turn(250, 0, true);
- }
- else if (dig.l3 == 0 && dig.l2 == 1 && dig.l1 == 1 && dig.r1 == 0 && dig.r2 == 0 && dig.r3 == 0 && nappi ==1 && ennenstarttia == 0) {
- motor_turn(180,210,true);
- //send_mqtt("Zumo046/info", "vahan vasemalle");
- ajastin = 100;
- }
- else if (dig.l3 == 1 && dig.l2 == 1 && dig.l1 == 0 && dig.r1 == 0 && dig.r2 == 0 && dig.r3 == 0 && nappi ==1 && ennenstarttia == 0) {
- motor_turn(20,200, true);
- //send_mqtt("Zumo046/info", "paljon vasemalle");
- }
- else if (dig.l3 == 1 && dig.l2 == 1 && dig.l1 == 1 && dig.r1 == 0 && dig.r2 == 0 && dig.r3 == 0 && nappi ==1 && ennenstarttia == 0) {
- motor_turn(0, 250, true);
- //send_mqtt("Zumo046/info", "TOSI vasemmalle");
- //motor_hardturnleft(20, 100, true);
- }
- else if (dig.l3 == 1 && dig.l2 == 1 && dig.l1 == 1 && dig.r1 == 1 && dig.r2 == 0 && dig.r3 == 0 && nappi ==1 && ennenstarttia == 0 ) {
- //send_mqtt("Zumo046/info", "TOOOOOSI vasemmalle");
- motor_hardturnleft(60, 200, true);
- //motor_turn(0, 250, true);
- }
- else if (dig.l3 == 1 && dig.l2 == 0 && dig.l1 == 0 && dig.r1 == 0 && dig.r2 == 0 && dig.r3 == 0 && nappi ==1 && ennenstarttia == 0) {
- motor_hardturnleft(140,200, true);
- //send_mqtt("Zumo046/info", " vasemalle ");
- //motor_turn(0, 250, true);
- }
- else if (dig.l3 == 1 && dig.l2 == 1 && dig.l1 == 1 && dig.r1 == 1 && dig.r2 == 1 && dig.r3 == 1 && viiva < 3) {
- motor_forward(100, 100);
- viiva++;
- // send_mqtt("Zumo046/info", "Stop ");
- }
- else if (dig.l3 == 1 && dig.l2 == 1 && dig.l1 == 1 && dig.r1 == 1 && dig.r2 == 1 && dig.r3 == 1 && viiva >= 3) {
- motor_forward(0, 10000);
- break;
- // send_mqtt("Zumo046/info", "Stop ");
- }
- }
- }
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement