Skip to main content

Featured post

A* ALGORITHM BASICS FOR PATH FINDING & HEURISTICS METHODS : ARTIFICIAL INTELLIGENCE

 A* ALGORITHM BASICS FOR PATH FINDING A* , widely used  known form of best-first search & path planning algorithm nowadays in mobile robots,games. this is the function for A*,                                     f(n) = g(n) + h(n) g ( n ) is the cost of the path from the start node to n , and h ( n ) is a heuristic function that estimates the cost of the cheapest path from n to the goal This will find cheapest f(n) value in neighbor nodes to archive goal node. check below image  A to B path finding with g(n),h(n),f(n) value In the final level check below image Now we will check the Algorithm // A* Search Algorithm 1. Initialize the open list 2. Initialize the closed list put the starting node on the open list (you can leave its f at zero) 3. ...

Soft WDT reset Error can Fixed with single line code in Nodemcu (IOT)




when you use while loops in your codeing with delay function (in nodemcu),
you must face this error  Soft WDT reset.
lets see a example

 //////example/////////

int motor = D1;//5;     // LED pin
int encoder = A0;//4; // push button is connected
void setup() {
Serial.begin(9600);
        pinMode(motor, OUTPUT);   // declare LED as output
        pinMode(encoder, INPUT);
}

void loop() {
  
   Serial.println(analogRead(encoder));
    while(analogRead(encoder)>=400){
      digitalWrite(motor, HIGH);
      Serial.println(analogRead(encoder));
      }
      digitalWrite(motor, LOW);
}



when you run like this code you will face below prblms 


Soft WDT reset

ctx: cont 
sp: 3ffef120 end: 3ffef390 offset: 01b0

>>>stack>>>
3ffef2d0:  feefeffe feefeffe feefeffe feefeffe  
3ffef2e0:  40219851 00000004 3ffe835c 33383980  
3ffef2f0:  40219af3 00000004 3ffe835c 0000018f  
3ffef300:  3ffee338 00000004 3ffe835c 00000000  
3ffef310:  40212d38 00000000 3ffee338 40201ee1  
3ffef320:  3ffe8468 000003d7 3ffee338 40201fcb  
3ffef330:  00000000 000003d7 40203358 3ffe8360  
3ffef340:  40201126 3ffe835c 3ffee338 40201ff4  
3ffef350:  feefeffe 3ffe835c 3ffe8360 40201cb5  
3ffef360:  00000000 00000000 00000001 3ffee35c  
3ffef370:  3fffdad0 00000000 3ffee354 40202184  
3ffef380:  feefeffe feefeffe 3ffee370 40100114  
<<<stack<<<
? )� 






 if you got like this error you can easily fix it 
add  
        dealy(0); 
inside the loop .

example 

int motor = D1;//5;     // LED pin
int encoder = A0;//4; // push button is connected
void setup() {
Serial.begin(9600);
        pinMode(motor, OUTPUT);   // declare LED as output
        pinMode(encoder, INPUT);
}

void loop() {
  
   Serial.println(analogRead(encoder));
    while(analogRead(encoder)>=400){
      digitalWrite(motor, HIGH);
      Serial.println(analogRead(encoder));
      delay(0);                                               //added here
      }
      digitalWrite(motor, LOW);
   delay(2);

Thank you guys if you want to ask anything leave with a comment.
 

Comments

Post a Comment

Popular posts from this blog

Getting Started with ARGoS Large-Scale Swarm Robot Simulator in Ubuntu

ARGoS (Autonomous Robots Go Swarming) is a multi-robot simulator designed to support large teams of robots. Its design is pretty different from the design of other simulators. Its most distinctive feature is that the 3D simulated world can be divided in regions, and each region can be assigned to a different physics engine. Furthermore, ARGoS' design revolves around the concept of tunable accuracy. In other words, in ARGoS, everything is a plug-in (robot models, sensors, actuators, physics engines, visualisations, etc) and the user can select which plug-ins to use for an experiment.  Since different plug-ins have different accuracy and computational costs, users can choose which plug-ins to use for each aspect of the simulation and assign resources only where it matters. This makes the simulation as fast as possible. At the time of writing, ARGoS supports the Swarmanoid robots (foot-bot and eye-bot) and the e-puck. ARGoS supports Linux and Mac OSX. Binary packages are availa...

A* ALGORITHM BASICS FOR PATH FINDING & HEURISTICS METHODS : ARTIFICIAL INTELLIGENCE

 A* ALGORITHM BASICS FOR PATH FINDING A* , widely used  known form of best-first search & path planning algorithm nowadays in mobile robots,games. this is the function for A*,                                     f(n) = g(n) + h(n) g ( n ) is the cost of the path from the start node to n , and h ( n ) is a heuristic function that estimates the cost of the cheapest path from n to the goal This will find cheapest f(n) value in neighbor nodes to archive goal node. check below image  A to B path finding with g(n),h(n),f(n) value In the final level check below image Now we will check the Algorithm // A* Search Algorithm 1. Initialize the open list 2. Initialize the closed list put the starting node on the open list (you can leave its f at zero) 3. ...

ROS Terminology

This section explains the most frequently used ROS terms. Use this section as a ROS glossary. Many terms may be new to the reader and even if there are unfamiliar terms, look over the definition and move on. You will become more familiar with the concepts as you engage with examples and exercises in each of the following chapters. ROS ROS provides standard operating system services such as hardware abstraction, device drivers,implementation of commonly used features including sensing, recognizing, mapping, motion planning, message passing between processes, package management, visualizers and libraries for development as well as debugging tools. Master  The master 2 acts as a name server for node-to-node connections and message communication. The command roscore is used to run the master, and if you run the master, you can register the name of each node and get information when needed. The connection between nodes and message communication such as topics and servic...

Translate