This project was generated with Angular CLI version 9.1.6. RosNg is a library for an easy integration of ros in angular projects. RosNg contains services to control rostopic, -services, -parameters. In addition, RosNg contains RosTopics and -Services for example to set and get the language of the robot or to start behaviors of a robot. Furthermore, RosNg contains components for an simple use of RosElements.
cd ~
git clone https://github.com/cridito/ros-ng.git
cd ros-ng
npm install
ng build
cp -r ~/ros-ng/dist/ros-ng nodemodule/folder/of/current/projectType
Import RosNgModule in App Module off your project.
...
import { RosNgModule } from 'ros-ng';
@NgModule({
...
imports: [
...
RosNgModule
],
...
Now, you can use the ros-ng module in the following three ways.
Ros-Service, Ros-Topic, Ros-Param
The three services below could use to connect own Topics, Services or Parameter.
...
import { RosParamService } from 'ros-ng';
import { RosTopicService } from 'ros-ng';
import { RosTopicService } from 'ros-ng';
...
constructor(
private rosParam: RosParamService,
private rosTopic: RosTopicService,
private rosService: RosServiceService
...
Ros-Topic Methods
publishTopic(topicName: string, messageType: string, msgObject: Object = null): void
subscribeTopic(topicName: string, messageType: string): Subject<any>
Ros-Service Methods
callService(serviceName: string, serviceType: string, requestObject: Object = null): Subject<any>
Ros-Parameter Methods
getRosParam(paramName: string): Observable<any>
setRosParam(paramName: string, value: any): Observable<any>
Implemented topics and services
Use in ts file of component.
import { SpeechService } from 'ros-ng';
...
@Component({
...
providers: [SpeechService]
})
export class AppComponent {
constructor(
private speech: SpeechService
){}
...
}
Services
| Services | Methods |
|---|---|
| AnimatedspeechService | stopBehavior(behavior: string, msg: string, cancel: boolean = true): Subject<any> startBehavior(behavior: string, msg: string, cancel: boolean = false): Subject<any> |
| GetLanguageService | getLanguage(): Subject |
| SetLanguageService | setLanguage(language: string): Subject |
| GetVolumneService | getVolumne(): Subject |
| SetVolumneService | setVolumne(volumne: number): Subject |
| RestService | rest(): Subject |
| WakeupService | wakeUp(): Subject |
| TabletLoadPageService | loadPage(url: string): Subject |
| TabletOnService | displayOn(): Subject |
| TabletOffService | displayOff(): Subject |
Topics
| Topics | Methods |
|---|---|
| BehaviorStatusService | getBehaviorStatus(): Subject |
| BehaviorService | startBehavior(behavior: string): void |
| ClientCountService | getClientCount(): Subject |
| ClientService | getClients(): Subject |
| ShoreService | getShoreData(): Subject |
| SpeechService | say(msg: string): void getSpeechData(): Subject |
Implemented components
Use in html file of component.
<lib-speech-dropdown label='Robot Say' buttonlabel='Say' [options]="['Hello','World']"></lib-speech-dropdown>
<lib-speech-input></lib-speech-input>
| Component | Selector | Parameter |
|---|---|---|
| SpeechDropdownComponent | lib-speech-dropdown | label: string buttonlabel: string options: string[] |
| SpeechInputComponent | lib-speech-input | label: string buttonlabel: string |