[Nibo-svn] SF.net SVN: nibo:[301] niborobolib/trunk/code
Brought to you by:
springob
From: <spr...@us...> - 2016-02-25 18:09:41
|
Revision: 301 http://sourceforge.net/p/nibo/code/301 Author: springob Date: 2016-02-25 18:09:38 +0000 (Thu, 25 Feb 2016) Log Message: ----------- * nibobee: moved and renamed examples/pidtest to test/test_pid * burger: added some tests Modified Paths: -------------- niborobolib/trunk/code/nibobee/Makefile niborobolib/trunk/code/niboburger/Makefile Added Paths: ----------- niborobolib/trunk/code/nibobee/test/test_pid/ niborobolib/trunk/code/niboburger/test/test_clock/ niborobolib/trunk/code/niboburger/test/test_clock/Makefile niborobolib/trunk/code/niboburger/test/test_clock/test_clock.c niborobolib/trunk/code/niboburger/test/test_pid/ niborobolib/trunk/code/niboburger/test/test_pid/Makefile niborobolib/trunk/code/niboburger/test/test_pid/test_pid.c niborobolib/trunk/code/niboburger/test/test_straightforward/ niborobolib/trunk/code/niboburger/test/test_straightforward/Makefile niborobolib/trunk/code/niboburger/test/test_straightforward/test_straightforward.c Removed Paths: ------------- niborobolib/trunk/code/nibobee/examples/pidtest/ Modified: niborobolib/trunk/code/nibobee/Makefile =================================================================== --- niborobolib/trunk/code/nibobee/Makefile 2016-02-25 17:58:01 UTC (rev 300) +++ niborobolib/trunk/code/nibobee/Makefile 2016-02-25 18:09:38 UTC (rev 301) @@ -7,8 +7,8 @@ SYSTEM = $(firstword $(subst -,$(SPACE),$(PLATFORM))) TUTORIAL = program1 program2 program3 program4 program5 program6 program7 program8 program9 -EXAMPLES = bgx1_demo bgx1_test_gfx bgx1_test_image bgx1_test_io bgx1_test_term bgx1_voltage colli2 collision irobst irxs_test line line_parcours pidtest rc5_test roundled -TEST = calibration first linesensortest test1 test2 test3 +EXAMPLES = bgx1_demo bgx1_test_gfx bgx1_test_image bgx1_test_io bgx1_test_term bgx1_voltage colli2 collision irobst irxs_test line line_parcours rc5_test roundled +TEST = calibration first linesensortest test1 test2 test3 test_pid PROGS = $(addprefix tutorial/,$(TUTORIAL)) $(addprefix examples/,$(EXAMPLES)) $(addprefix test/,$(TEST)) Modified: niborobolib/trunk/code/niboburger/Makefile =================================================================== --- niborobolib/trunk/code/niboburger/Makefile 2016-02-25 17:58:01 UTC (rev 300) +++ niborobolib/trunk/code/niboburger/Makefile 2016-02-25 18:09:38 UTC (rev 301) @@ -8,10 +8,8 @@ # TUTORIAL = program1 program2 program3 program4 program5 program6 program7 program8 program9 # EXAMPLES = bgx1_demo bgx1_test_gfx bgx1_test_image bgx1_test_io bgx1_test_term bgx1_voltage colli2 collision irobst irxs_test line line_parcours pidtest rc5_test roundled -# TEST = calibration first linesensortest test1 test2 test3 +TEST = first follow_me obstacle test_clock test_pid test_straightforward -TEST = first follow_me obstacle - PROGS = $(addprefix tutorial/,$(TUTORIAL)) $(addprefix examples/,$(EXAMPLES)) $(addprefix test/,$(TEST)) Added: niborobolib/trunk/code/niboburger/test/test_clock/Makefile =================================================================== --- niborobolib/trunk/code/niboburger/test/test_clock/Makefile (rev 0) +++ niborobolib/trunk/code/niboburger/test/test_clock/Makefile 2016-02-25 18:09:38 UTC (rev 301) @@ -0,0 +1,30 @@ +TARGET = test_clock + +BASEDIR = ../../../.. + +ifndef PLATFORM +PLATFORM = niboburger-m16-15 +endif + +# Source files +SRC = test_clock.c + +# MATH lib and Stdlib +#MATH = -lm -Wl,-u,vfprintf -lprintf_flt +MATH = -lm +#MATH = + +# Nibo library +LIBS = -lniboburger_surface -lniboburger_bgx1 -lniboburger_usart -lniboburger_pid -lniboburger_base -lniboburger_utils + +# Includes +include $(BASEDIR)/platforms/$(PLATFORM).mk +include $(BASEDIR)/platforms/niboburger-common.mk +include $(BASEDIR)/src/version.mk + +AVRDUDE_FLAGS += -V + +# Dependencies +ifneq ($(MAKECMDGOALS),clean) +-include $(OBJS:.o=.d) +endif Added: niborobolib/trunk/code/niboburger/test/test_clock/test_clock.c =================================================================== --- niborobolib/trunk/code/niboburger/test/test_clock/test_clock.c (rev 0) +++ niborobolib/trunk/code/niboburger/test/test_clock/test_clock.c 2016-02-25 18:09:38 UTC (rev 301) @@ -0,0 +1,25 @@ +#include <niboburger/robomain.h> + +uint8_t mode; + +uint8_t prog=0; + +void setup() { + analog_init(); + led_init(); + odometry_init(); + motpwm_init(); + motpid_init(); + motpid_init(); + + clock_set_timer(1000); +} + + + +void loop() { + clock_wait_timer(); + led_set(1,1); + clock_sleep(100); + led_set(1,0); +} Added: niborobolib/trunk/code/niboburger/test/test_pid/Makefile =================================================================== --- niborobolib/trunk/code/niboburger/test/test_pid/Makefile (rev 0) +++ niborobolib/trunk/code/niboburger/test/test_pid/Makefile 2016-02-25 18:09:38 UTC (rev 301) @@ -0,0 +1,30 @@ +TARGET = test_pid + +BASEDIR = ../../../.. + +ifndef PLATFORM +PLATFORM = niboburger-m16-15 +endif + +# Source files +SRC = test_pid.c + +# MATH lib and Stdlib +#MATH = -lm -Wl,-u,vfprintf -lprintf_flt +MATH = -lm +#MATH = + +# Nibo library +LIBS = -lniboburger_surface -lniboburger_bgx1 -lniboburger_usart -lniboburger_pid -lniboburger_base -lniboburger_utils + +# Includes +include $(BASEDIR)/platforms/$(PLATFORM).mk +include $(BASEDIR)/platforms/niboburger-common.mk +include $(BASEDIR)/src/version.mk + +AVRDUDE_FLAGS += -V + +# Dependencies +ifneq ($(MAKECMDGOALS),clean) +-include $(OBJS:.o=.d) +endif Added: niborobolib/trunk/code/niboburger/test/test_pid/test_pid.c =================================================================== --- niborobolib/trunk/code/niboburger/test/test_pid/test_pid.c (rev 0) +++ niborobolib/trunk/code/niboburger/test/test_pid/test_pid.c 2016-02-25 18:09:38 UTC (rev 301) @@ -0,0 +1,41 @@ +#include <niboburger/robomain.h> + +uint8_t mode; + +uint8_t prog=0; + +void setup() { + analog_init(); + led_init(); + odometry_init(); + motpwm_init(); + motpid_init(); +} + + +void go(int32_t dist) { + int32_t ticks = dist * TICKS_PER_METER / 1000; + motpid_setTargetRel (ticks, ticks, 40); +} + +void turn(int16_t deg) { + int32_t ticks; + if (deg<0) { + ticks = -deg; + ticks = ticks * TICKS_PER_TURN_SINGLE / 360; + motpid_setTargetRel (0, ticks, 20); + } else if (deg>0) { + ticks = deg; + ticks = ticks * TICKS_PER_TURN_SINGLE / 360; + motpid_setTargetRel (ticks, 0, 20); + } +} + + +void loop() { + analog_wait_update(); + char key = key_get_char (); + if (key=='A') { + motpid_setTargetRel (5*TICKS_PER_METER, 0, 40); + } +} Added: niborobolib/trunk/code/niboburger/test/test_straightforward/Makefile =================================================================== --- niborobolib/trunk/code/niboburger/test/test_straightforward/Makefile (rev 0) +++ niborobolib/trunk/code/niboburger/test/test_straightforward/Makefile 2016-02-25 18:09:38 UTC (rev 301) @@ -0,0 +1,30 @@ +TARGET = test_straightforward + +BASEDIR = ../../../.. + +ifndef PLATFORM +PLATFORM = niboburger-m16-15 +endif + +# Source files +SRC = test_straightforward.c + +# MATH lib and Stdlib +#MATH = -lm -Wl,-u,vfprintf -lprintf_flt +MATH = -lm +#MATH = + +# Nibo library +LIBS = -lniboburger_surface -lniboburger_bgx1 -lniboburger_usart -lniboburger_pid -lniboburger_base -lniboburger_utils + +# Includes +include $(BASEDIR)/platforms/$(PLATFORM).mk +include $(BASEDIR)/platforms/niboburger-common.mk +include $(BASEDIR)/src/version.mk + +AVRDUDE_FLAGS += -V + +# Dependencies +ifneq ($(MAKECMDGOALS),clean) +-include $(OBJS:.o=.d) +endif Added: niborobolib/trunk/code/niboburger/test/test_straightforward/test_straightforward.c =================================================================== --- niborobolib/trunk/code/niboburger/test/test_straightforward/test_straightforward.c (rev 0) +++ niborobolib/trunk/code/niboburger/test/test_straightforward/test_straightforward.c 2016-02-25 18:09:38 UTC (rev 301) @@ -0,0 +1,88 @@ +#include <niboburger/robomain.h> + +uint8_t mode; + +uint8_t prog=0; + +void setup() { + analog_init(); + led_init(); + odometry_init(); + motpwm_init(); + motpid_init(); +} + + +void go(int32_t dist) { + int32_t ticks = dist * TICKS_PER_METER / 1000; + motpid_setTargetRel (ticks, ticks, 40); +} + +void turn(int16_t deg) { + int32_t ticks; + if (deg<0) { + ticks = -deg; + ticks = ticks * TICKS_PER_TURN_SINGLE / 360; + motpid_setTargetRel (0, ticks, 20); + } else if (deg>0) { + ticks = deg; + ticks = ticks * TICKS_PER_TURN_SINGLE / 360; + motpid_setTargetRel (ticks, 0, 20); + } +} + + +void loop() { + analog_wait_update(); + char key = key_get_char (); + if (key=='A') { + prog=1; + go(2900); + led_setall(0, 1, 1, 0); + } else if (key=='B') { + turn(-90); + led_setall(1, 0, 0, 0); + } else if (key=='C') { + motpwm_setLeft(800); + motpwm_setRight(800); + odometry_reset(); + mode=1; + //turn(+90); + led_setall(0, 0, 0, 1); + } + + + + + + + + + + if (mode) { + if (odometry_getLeft(0)>TICKS_PER_METER) { + mode=0; + motpwm_stop(); + led_setall(0, 0, 0, 0); + + } + } else if (motpid_getTargetDist()<6) { + motpid_release(); + motpwm_stop(); + led_setall(0, 0, 0, 0); + delay(250); + + if (prog==1) { + prog=2; + turn(90); + led_setall(0, 0, 1, 1); + } else if (prog==2) { + prog=3; + go(800); + led_setall(1, 1, 1, 1); + } + + + } + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |