Могу помочь с терминологией, а дальше по ключевым словам через википедию и далее...
Как появятся конкретный вопросы пишите.
Задача управления мобильным роботом состоит из следующих частей:
-навигация (определение текущего положения);
-планирование траектории движения;
-следование по заданной траектории;
-физический уровень управления(получение данных с датчиков, управление приводами).
Навигационная задача решается путем совместной обработки(см. комплексирование, фильтр калмана) данных с датчиков.
Для колесного робота это будут, помимо упомянутой Вами GPS, энкодеры на колесах (см. колесная одометрия),
и, возможно, система технического зрения(см. SLAM, RGBD, распознание оптических маркеров).
Если местность открытая, а точности GPS (2-3м) недостаточно, то возможно применение RTK GPS приемников дающих сантиметровую точность.
Для закрытых помещений существуют варианты использования УЗ маяков, либо ориентация по маркерам при помощи камеры.
Кроме этого, робот может быть оборудован дополнительными датчиками (УЗ,оптическими, механическими концевиками) сигнализирующими
о наличии препятствия.
Задача планирования траектории решается либо прямым заданием траектории в виде набора контрольных точек (применимо для
аппаратов действующих в "чистом поле"), либо оптимизационными алгоритмами на основе текущей карты местности(например,RRT).
После формирования траектории в работу включается автоматический регулятор обеспечивающий движение, Ключевые слова: ПИД, обратная связь.
Регулятор передает управление на контроллеры электродвигателей, наиболее употребимые здесь протоколы CAN, ШИМ.
Сейчас есть возможность управлять физическим уровнем через готовые модули оставаясь при отработке алгоритмов в
комфортном окружении ПК программ ( ROS, Simulik, Python ).
мне надо разработать, а не купить готовый
Вряд ли у Вас стоит задача разработать все с нуля.
Так что первое что стоит сделать - поискать готовую платформу ( Pixhawk, ПК под ROS, доп. платы к RP и BeagleBone и т.д.).