Aller au contenu


Contenu de marcus

Il y a 25 élément(s) pour marcus (recherche limitée depuis 24-mai 13)


#114312 La section de données dépasse l'espace disponible sur la carte

Posté par marcus sur 29 septembre 2021 - 09:13 dans Programmation

Je suis en train de faire un petit jeu récemment et je veux utiliser Arduino uno pour le faire. Mon code se compile sans problème, mais lorsque je le télécharge, j'obtiens une erreur comme celle montrée dans l'image, est-ce parce que j'ai trop de variables définies ?
Est-ce que c'est parce que j'ai trop de variables définies ? Quelqu'un peut-il me dire comment le corriger ?
 
Arduino:1.8.12 (Windows 10), Development board: "Arduino Uno"

The project uses 6336 bytes, which occupies (19%) of the program storage space. The maximum is 32256 bytes. data section exceeds available space in board

Global variables used 3046 bytes, (148%) of dynamic memory, leaving -998 bytes for local variables. The maximum is 2048 bytes.
There is not enough memory; visit the following URL to follow the instructions to reduce memory usage.
http://www.arduino.cc/en/Guide/Troubleshooting#size
Error while compiling for development board Arduino Uno.

Turn on in File -> Preferences
"Show detailed output during compilation" option
This report will contain more information.

 




#114311 fauteuil de massage basé sur ESP32 et LCD

Posté par marcus sur 29 septembre 2021 - 09:09 dans Autres projets inclassables

Aperçu du projet
 
Il s'agit d'une application de fauteuil de massage domestique. Lorsque l'écran série LCD est mis sous tension, une interface de démarrage apparaît. Après un court séjour, il sautera à une interface spécifique. Cette interface est utilisée pour régler l'heure actuelle. Lors du réglage, un clavier s'affiche. Après le réglage, cliquez sur OK pour accéder à l'interface de sélection du mode de massage. Ici, j'ai défini trois modes : massage de la tête, massage du dos et mode complet. Dans le mode, l'intensité du massage peut être réglée, les vitesses haute, moyenne et basse peuvent être réglées, et la lumière LED correspondante sera utilisée pour l'indication de l'intensité ; les temps de massage peuvent également être réglés, après avoir atteint le nombre défini, il s'arrêtera automatiquement ; dans le modèle complet, la tête et le dos seront massés en même temps, et il peut être éteint quand il n'est pas nécessaire. Ces actions se font par l'intermédiaire de l'écran tactile STONE à port série pour réaliser la transmission des commandes.
 
Modules requis pour le projet
 
ESP32
③ Module et commande de moteur pas à pas ;
④ Module de matrice de LED ;

 

Conception de l'interface utilisateur graphique

 

c-12-STONE-Touch-Screen-ESP32-for-massage-chair(1).jpg

 

schéma de connexion

 

c-5-Control-WS2812B_RGB-lamp-by-STONE-display-module(23).jpg

 

partie du code

//HEAD

uint8_t   HeadGearHigh[9]       = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0E, 0x01, 0x00, 0x03};

uint8_t   HeadGearMiddle[9]     = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0E, 0x01, 0x00, 0x02};

uint8_t   HeadGearLow[9]        = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0E, 0x01, 0x00, 0x01};

 

uint8_t   HeadTiming[9]         = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x11, 0x01, 0x00, 0x09};

 

uint8_t   HeadModeStart[9]    = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x19, 0x01, 0x41, 0x61};

uint8_t   HeadModeStop[9]     = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x24, 0x01, 0x46, 0x66};

 

//BACK

uint8_t   BackGearHigh[9]       = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x1A, 0x01, 0x00, 0x01};

uint8_t   BackGearMiddle[9]     = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x1A, 0x01, 0x00, 0x02};

uint8_t   BackGearLow[9]      = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x1A, 0x01, 0x00, 0x03};

 

uint8_t   BackModeStart[9]      = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0C, 0x01, 0x42, 0x62};

uint8_t   BackModeStop[9]     = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0D, 0x01, 0x43, 0x63};

 

//Integrated

uint8_t   IntegratedModeStart[9]= {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x0F, 0x01, 0x44, 0x64};

uint8_t   IntegratedModeStop[9] = {0xA5, 0x5A, 0x06, 0x83, 0x00, 0x1F, 0x01, 0x45, 0x65};

démonstration vidéo

 




#114282 Bras robotique imprimé en 3D

Posté par marcus sur 16 septembre 2021 - 04:25 dans Impression 3D et Imprimantes 3D

Merci beaucoup ! Je devrais d'abord apprendre le bras du robot avant de faire du bricolage.




#114281 Contrôle d'accès intelligent basé sur ESP32 et LCD

Posté par marcus sur 16 septembre 2021 - 04:22 dans Domotique

J'aime bien ton systeme, mais ce qui me freine c'est le prix de l'écran. :)

 

Merci pour vos commentaires et vos encouragements !
J'ai longtemps hésité à acheter cet écran au début, mais j'ai ensuite compris à quoi il servait.
 
J'ai acheté beaucoup d'autres LCD auparavant, et j'ai fait une comparaison simple pour qu'en le regardant, on puisse facilement comprendre pourquoi il est si cher. Et le fait que je l'utilise me donne une sensation formidable !
 
QQ图片20210916112050.png



#114271 Comment la sortie PID contrôle-t-elle le relais statique ?

Posté par marcus sur 15 septembre 2021 - 02:47 dans Electronique

Comment la sortie PID de la commande de température 200PLC contrôle-t-elle le relais statique ?




#114270 Contrôle d'accès intelligent basé sur ESP32 et LCD

Posté par marcus sur 15 septembre 2021 - 02:39 dans Domotique

démonstration vidéo

 




#114269 Contrôle d'accès intelligent basé sur ESP32 et LCD

Posté par marcus sur 15 septembre 2021 - 02:35 dans Domotique

Brève introduction
 
La maison intelligente devient de plus en plus courante avec le développement de la technologie, cet article se concentrera sur les aspects de sécurité du projet de contrôle d'accès intelligent.
Cet article utilise l'écran tactile de STONE pour envoyer des commandes au MCU afin de contrôler le relais et le module MFRC522.
Le principe de la lecture de carte : en pilotant le module RFID-RC522, identifier la carte d'identité proche de la carte d'identité, puis déterminer si l'ID existe dans la base de données du mot type, l'ID est la valeur type du mot, si l'existence de la vérification à travers, et ensuite imprimer le nom correspondant, et ensuite piloter la serrure électromagnétique de la même manière.
 
Matériel nécessaire
 
 
Fonction réalisée
 
1. enregistrement de la carte.
2. enregistrement du nom d'utilisateur et du mot de passe.
3. glissement de la carte pour déverrouiller la serrure électronique.
4. Enregistrement du nom d'utilisateur et du mot de passe pour déverrouiller la serrure électronique.
 
Schéma de connexion
 
connection.jpg
 
Conception de l'interface utilisateur graphique
 
GUI design.png
 
code
 
import mfrc522
import time
import _thread
from os import uname
from machine import Pin, UART
#from pyb import UART
#import machine

suos = Pin(32,Pin.OUT)
uart2 = UART(2, baudrate=115200, rx=16,tx=17,timeout=10)

ESP32_HSPI_CLOCK = 14
ESP32_HSPI_SLAVE_SELECT = 15
ESP32_HSPI_MISO = 12
ESP32_HSPI_MOSI = 13
ESP32_MFRC522_RST = 5

rx3 = []
rx_name = []
user_id_flag = False
password_flag = False
temp_id = ''
temp_mima = ''
personnel_id = {'zbw':[236,230,169,47],'lbw':[19,165,93,4]}
personnel_ps = {'zbw':'zbw3366','lbw':'lbwnb'}
admin_password = ('yyds')
button_cmd = [16,1]
edit1_cmd = [16,112]
edit2_cmd = [16,113]
edit3_cmd = [16,114]

if uname()[0] == 'esp32':
	rdr = mfrc522.MFRC522(ESP32_HSPI_CLOCK, ESP32_HSPI_MOSI, ESP32_HSPI_MISO, ESP32_MFRC522_RST, ESP32_HSPI_SLAVE_SELECT)

def do_write():
	try:
		(stat, tag_type) = rdr.request(rdr.REQIDL)
		if stat == rdr.OK:
			(stat, raw_uid) = rdr.anticoll()
			if stat == rdr.OK:
				print("New card detected")
				print("  - tag type: 0x%02x" % tag_type)
				print("  - uid : 0x%02x%02x%02x%02x" % (raw_uid[0], raw_uid[1], raw_uid[2], raw_uid[3]))
				print("")
				if rdr.select_tag(raw_uid) == rdr.OK:
					key = [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]
					if rdr.auth(rdr.AUTHENT1A, 8, key, raw_uid) == rdr.OK:
						stat = rdr.write(8, b"\x00\x53\x00\x54\x00\x4F\x00\x4E\x00\x45\x0a\x0b\x0c\x0d\x0e\x0f")
						rdr.stop_crypto1()
						if stat == rdr.OK:
							print("Data written to card")
						else:
							print("Failed to write data to card")
					else:
						print("Authentication error")
				else:
					print("Failed to select tag")

	except KeyboardInterrupt:
		print("write error")


def do_read():
	while True:
		try:
			(stat, tag_type) = rdr.request(rdr.REQIDL)

			if stat == rdr.OK:
				(stat, raw_uid) = rdr.anticoll()
				if stat == rdr.OK:
					print("New card detected")
					print("  - tag type: 0x%02x" % tag_type)
					print("  - uid   : 0x%02x%02x%02x%02x" % (raw_uid[0], raw_uid[1], raw_uid[2], raw_uid[3]))
					print (raw_uid[0], raw_uid[1], raw_uid[2], raw_uid[3])
					print("")
					if rdr.select_tag(raw_uid) == rdr.OK: 
						key = [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]
						if rdr.auth(rdr.AUTHENT1A, 8, key, raw_uid) == rdr.OK:
							print("Address 8 data: %s" % rdr.read(8))
							for ps in personnel_id:
								if raw_uid[0:4:1] == personnel_id.get(ps):
									suos.value(1)
									print(ps)
									uart_write(ps, *raw_uid[0:4:1])
									time.sleep(3)
									uart2.sendbreak()
									break
							rdr.stop_crypto1()
							time.sleep(3)
							suos.value(0)
						else:
							print("Authentication error")
					else:
						print("Failed to select tag")
			if uart2.any()>1:
				rx2 = []
				data_name2 = ''
				bin_data = uart2.read(40)
				uart2.sendbreak()
				rx1 = list(bin_data)
				for item in rx1:
					rx2.append(chr(item))
				print(rx2)
				if rx1[3:5:1] == button_cmd:
					data_name_len = rx1[6] - 1
					data_name = rx2[7:data_name_len+7:1]
					data_name2 = ''.join(data_name)
					print(data_name2)
					if data_name2 == 'back3':
						return
		except KeyboardInterrupt:
			print("read error")

def do_read2 (idd):
	print(idd)
	while True:
		try:
			(stat, tag_type) = rdr.request(rdr.REQIDL)

			if stat == rdr.OK:
				(stat, raw_uid) = rdr.anticoll()
				if stat == rdr.OK:
					print("New card detected")
					print("  - tag type: 0x%02x" % tag_type)
					print("  - uid   : 0x%02x%02x%02x%02x" % (raw_uid[0], raw_uid[1], raw_uid[2], raw_uid[3]))
					print (raw_uid[0], raw_uid[1], raw_uid[2], raw_uid[3])
					print("")
					if rdr.select_tag(raw_uid) == rdr.OK: 
						key = [0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF]
						if rdr.auth(rdr.AUTHENT1A, 8, key, raw_uid) == rdr.OK:
							print("Address 8 data: %s" % rdr.read(8))
							personnel_id[idd] = raw_uid[0:4:1]
							uart_write3(*raw_uid[0:4:1])
							rdr.stop_crypto1()
						else:
							print("Authentication error")
					else:
						print("Failed to select tag")
			if uart2.any()>1:
				rx2 = []
				data_name2 = ''
				bin_data = uart2.read(40)
				uart2.sendbreak()
				rx1 = list(bin_data)
				for item in rx1:
					rx2.append(chr(item))
				if rx1[3:5:1] == button_cmd:
					data_name_len = rx1[6] - 1
					data_name = rx2[7:data_name_len+7:1]
					data_name2 = ''.join(data_name)
					print(data_name2)
				if data_name2 == 'back1':
					return

		except KeyboardInterrupt:
			print("read error")

def uart_write(text, *ids):
#	print(text, *ids)
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"cardname1","text":"'+str(text)+'"}>ET')
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"cardid1","text":"'+str(ids)+'"}>ET')
	uart2.write('ST<{"cmd_code":"set_visible","type":"widget","widget":"lock1","visible":true}>ET')
	time.sleep(3)
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"cardname1","text":"''"}>ET')
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"cardid1","text":"''"}>ET')
	uart2.write('ST<{"cmd_code":"set_visible","type":"widget","widget":"lock1","visible":false}>ET')

def uart_write2(text,text2):
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"cardid","text":"'+text+'"}>ET')
	time.sleep(3)
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"cardid","text":"'+text2+'"}>ET')
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"edit2","text":"''"}>ET')

def uart_write3(*id2):
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"cardid","text":"'+str(id2)+'"}>ET')
	time.sleep(3)
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"cardid","text":"''"}>ET')

def uart_write4(text,text2):
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"login","text":"'+text+'"}>ET')
	time.sleep(1)
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"login","text":"'+text2+'"}>ET')
	time.sleep(1)
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"edit3","text":"''"}>ET')
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"edit4","text":"''"}>ET')
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"edit7","text":"''"}>ET')

def uart_write5():
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"cardid","text":"'+str(id2)+'"}>ET')
	time.sleep(3)
	uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"cardid","text":"''"}>ET')

def card_zhuce():
	while True:
		if uart2.any():
			user_id = ''
			password = ''
			rx2 = []
			rx_num = 0
			bin_data = uart2.read(40)
			uart2.sendbreak()
			rx1 = list(bin_data)
			for item in rx1:
				rx2.append(chr(item))
				rx_num += 1
			data_end = rx_num-5
			data_id_st = rx2[8:13:1]
			data_id_st2 = ''.join(data_id_st)
			print(data_id_st2)
			if data_id_st2 == 'edit1':
				data_id_st3 = rx2[15:data_end:1]
				data_id_st4 = ''.join(data_id_st3)
				print(data_id_st4)
				if data_id_st4 != '':
					name = True
			elif data_id_st2 == 'edit2':
				data_id_st5 = rx2[15:data_end:1]
				data_id_st6 = ''.join(data_id_st5)
				if data_id_st6 == admin_password:
					admin = True
					uart_write2('Verification passed!','Please place the card!')
					do_read2(data_id_st4)
					return

def mima_zuce():
	temp_id3 = ''
	temp_mima3 = ''
	while True:
		if uart2.any():
			user_id = ''
			password = ''
			rx2 = []
			rx_num = 0
#			data_end = 0
			bin_data = uart2.read(40)
			uart2.sendbreak()
			rx1 = list(bin_data)
			for item in rx1:
				rx2.append(chr(item))
				rx_num += 1
#				if (rx2[rx_num] == 'T') and (rx2[rx_num-1] == 'E') and (rx2[rx_num-2] == '>'):
#					break
			data_end = rx_num-5
			data_id_st = rx2[8:13:1]
			data_id_st2 = ''.join(data_id_st)
			print(data_id_st2)
			if rx1[3:5:1] == button_cmd:
				data_name_len = rx1[6] - 1
				data_name = rx2[7:data_name_len+7:1]
				data_name2 = ''.join(data_name)
				print(data_name2)
				if data_name2 == 'back2':
					return
			if data_id_st2 == 'edit3':
				data_id_st3 = rx2[15:data_end:1]
				data_id_st4 = ''.join(data_id_st3)
				print(data_id_st4)
				user_id_flag = True
				temp_id3 = data_id_st4
#				personnel_ps[temp_id] = raw_uid[0:4:1]
			elif data_id_st2 == 'edit4':
				data_id_st5 = rx2[15:data_end:1]
				data_id_st6 = ''.join(data_id_st5)
				print(data_id_st6)
#				if personnel_ps.get(temp_id) == data_id_st6:
				password_flag = True
				temp_mima3 = data_id_st6
#					personnel_ps[temp_id] = password_flag

#			print(rx2,user_id_flag,password_flag)

			elif data_id_st2 == 'edit7':
				data_id_st5 = rx2[15:data_end:1]
				data_id_st6 = ''.join(data_id_st5)
				if (data_id_st6 == admin_password) and (password_flag == True) and (user_id_flag == True):
					admin = True
					personnel_ps[temp_id3] = temp_mima3
					password_flag = False
					user_id_flag = False
					uart_write4('Verification passed!','login was successful!')


def password_loin():
	temp_id2 = ''
	temp_mima = ''
	while True:
		if uart2.any():
			user_id = ''
			password = ''
			rx2 = []
			rx_num = 0
#			data_end = 0
			bin_data = uart2.read(40)
			uart2.sendbreak()
			rx1 = list(bin_data)
			for item in rx1:
				rx2.append(chr(item))
				rx_num += 1
#				if (rx2[rx_num] == 'T') and (rx2[rx_num-1] == 'E') and (rx2[rx_num-2] == '>'):
#					break
			data_end = rx_num-5
			data_id_st = rx2[8:13:1]
			data_id_st2 = ''.join(data_id_st)
			print(data_id_st2)
			if rx1[3:5:1] == button_cmd:
				data_name_len = rx1[6] - 1
				data_name = rx2[7:data_name_len+7:1]
				data_name2 = ''.join(data_name)
				print(data_name2)
				if data_name2 == 'back4':
					return
			if data_id_st2 == 'edit5':
				data_id_st3 = rx2[15:data_end:1]
				data_id_st4 = ''.join(data_id_st3)
				print(data_id_st4)
				if data_id_st4 in personnel_ps:
					user_id_flag = True
					temp_id2 = data_id_st4
			elif data_id_st2 == 'edit6':
				data_id_st5 = rx2[15:data_end:1]
				data_id_st6 = ''.join(data_id_st5)
				print(data_id_st6)
				print(temp_id2)
				print(personnel_ps)
				if personnel_ps.get(temp_id2) == data_id_st6:
					password_flag = True

#			print(rx2,user_id_flag,password_flag)
					print(user_id_flag,password_flag)
					if (password_flag == True) and (user_id_flag == True):
						uart_write(temp_id2,temp_id2)
						password_flag = False
						user_id_flag = False
						suos.value(1)
						uart2.write('ST<{"cmd_code":"set_visible","type":"widget","widget":"lock2","visible":true}>ET')
						uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"edit5","text":"''"}>ET')
						uart2.write('ST<{"cmd_code":"set_text","type":"label","widget":"edit6","text":"''"}>ET')
						time.sleep(3)
#						uart_write('student','')
						suos.value(0)
						uart2.write('ST<{"cmd_code":"set_visible","type":"widget","widget":"lock2","visible":false}>ET')
						uart2.sendbreak()

while True:
	if uart2.any()>1:
		rx2 = []
		data_name2 = ''
		bin_data = uart2.read(40)
#		time.sleep(1)
		uart2.sendbreak()
#		time.sleep(1)
		rx1 = list(bin_data)
		for item in rx1:
			rx2.append(chr(item))
		print(rx2)
		if rx1[3:5:1] == button_cmd:
			data_name_len = rx1[6] - 1
			data_name = rx2[7:data_name_len+7:1]
			data_name2 = ''.join(data_name)
			print(data_name2)
			if data_name2 == 'card1':
				card_zhuce()
			elif data_name2 == 'password1':
				mima_zuce()
			elif data_name2 == 'card2':
				do_read()
			elif data_name2 == 'password2':
				password_loin()


 




#114268 Bras robotique imprimé en 3D

Posté par marcus sur 15 septembre 2021 - 02:24 dans Impression 3D et Imprimantes 3D

Si jamais tu cherches un petit bras complet déjà assemblé et sympas : On a celui là en stock qui est pas mal :) 
https://www.robot-ma...ycobot-485.html

 

Il a l'air très bien, j'ai vu des projets sur FB avant où les gens ont utilisé ce bras robotique. C'est très intéressant, il est livré avec un petit écran à la base.




#114267 Bras robotique imprimé en 3D

Posté par marcus sur 15 septembre 2021 - 02:19 dans Impression 3D et Imprimantes 3D

Bonjour,

je ne suis pas bien sûr de comprendre ton problème :

-tu cherches un bras robotique opensource à fabriquer toi même? ou tu cherches un bras robotique à acheter tout prêt (ou en kit)?

- pour l'UART, un port UART est limité à la communication avec un seul autre appareil, donc je ne comprends pas trop pourquoi tu veux que le bras communique en UART (après, l'arduino Mega a plusieurs ports UART)

 

Je cherchais auparavant une source ouverte pour les bras robotiques imprimés en 3D, mais je me suis dit que l'achat d'un kit prêt à l'emploi serait peut-être une bonne option.

 

Car j'ai besoin d'utiliser mon LCD pour communiquer avec le microcontrôleur afin de contrôler le bras du robot. Mon LCD utilise le port série UART.




#114245 Bras robotique imprimé en 3D

Posté par marcus sur 13 septembre 2021 - 09:52 dans Impression 3D et Imprimantes 3D

Je suis à la recherche d'un bras robotique approprié qui ne soit pas cher, parce que mon LCD utilise le port série UART pour communiquer avec d'autres dispositifs, donc ce serait bien d'avoir un tel bras robotique qui peut utiliser UART.

 

Je vais d'abord utiliser quelques composants tels que des moteurs, des ventilateurs, etc. pour simuler son fonctionnement, et le but principal est de tester d'abord la communication entre lui et le bras du robot ou le microcontrôleur.




#114220 Bras robotique imprimé en 3D

Posté par marcus sur 09 septembre 2021 - 11:00 dans Impression 3D et Imprimantes 3D

Bonjour à tous, je suis ici pour mettre à jour ce post.
J'ai récemment terminé la conception de l'interface utilisateur pour le bras du robot, peut-être que quelqu'un a des suggestions à me faire ?
 
机械臂界面1.jpg
 
机械臂界面3.jpg
 
机械臂界面2.jpg



#114126 Bras robotique imprimé en 3D

Posté par marcus sur 26 août 2021 - 06:51 dans Impression 3D et Imprimantes 3D

Salut ! Quelle est ton modèle d'imprimante ? Je te rassure il n'y a pas de raisons que ton imprimante lâche aussi vite ! Le nombre de pièces ne me parait pas si important mais je sais que lancer des pièces volumineuses qaund on débute c'est assez stressant. Du coup je te conseille de commencer par les composants les plus petits et faciles à imprimer (pas trop de supports etc.) afin que tu puisses avoir le temps de bien régler ta machine et te familliariser avec le monde de l'impression 3D ;)

Il y a plusieurs utilisateurs d'imprimante 3D sur le forum alors n'hésite pas si tu as besoin de conseils !

 

J'utilise une imprimante 3D de ZRapid Tech.




#114113 À propos de la méthode de communication série du capteur

Posté par marcus sur 23 août 2021 - 04:32 dans Electronique

Ok, merci, je vais chercher des exemples et un tutoriel sur la connexion.




#114111 Bras robotique imprimé en 3D

Posté par marcus sur 23 août 2021 - 03:31 dans Impression 3D et Imprimantes 3D

Hello !
Super projet, tu as déjà commencé quelque part ? :)

Je n'ai pas encore vraiment commencé, j'ai l'écran tactile et le microcontrôleur maintenant, mais j'utilise une imprimante 3D pour la première fois et j'ai cherché quelques fichiers open source en STL, mais cela nécessite beaucoup de pièces à imprimer, ce qui va consommer presque 2-3 mois de mon temps, pendant lesquels je pourrais même casser mon imprimante. Je suis à la recherche d'un fichier qui nécessite moins de matériel.



#114110 À propos de la méthode de communication série du capteur

Posté par marcus sur 23 août 2021 - 03:24 dans Electronique

Je pense que peut-être ils diffèrent dans ce que vous avez dit au sujet de l'interface est différente, l'un est UART l'autre est I2C.

Alors, lequel est le plus pratique pour réaliser la communication, UART ou I2C ? Par exemple, pour se connecter à mon écran LCD, mon écran TFT peut communiquer avec UART, I2C ou IO.

Voici la fiche technique de mon LCD.

Fichier(s) joint(s)




#114071 À propos de la méthode de communication série du capteur

Posté par marcus sur 19 août 2021 - 08:01 dans Electronique

Un capteur a un port de données série bidirectionnel SDA et un port d'horloge série bidirectionnel SCL, et l'autre capteur a seulement un port de données série bidirectionnel, y a-t-il une différence dans la communication série entre ces deux capteurs ?




#114070 Bras robotique imprimé en 3D

Posté par marcus sur 19 août 2021 - 07:54 dans Impression 3D et Imprimantes 3D

Je veux utiliser une imprimante 3D pour fabriquer un bras de robot, et je veux faire en sorte que le bras de robot puisse communiquer avec un microcontrôleur tel que Arduino ou Raspberry Pi, et après cela, le microcontrôleur établit une communication avec l'écran tactile pour réaliser le contrôle du bras de robot à travers l'écran LCD.
 
image-1569401063898.png



#113858 Bonjour les gars

Posté par marcus sur 08 juillet 2021 - 06:46 dans Et si vous vous présentiez?

Merci pour la suggestion,Forthman m'a recommandé un fil de discussion du forum qui pourrait contenir quelque chose qui me permettrait de mieux comprendre la robotique, et je pense que c'est suffisant pour que j'étudie pendant un certain temps.

https://www.robot-ma...ibot-faq-en-fr/




#113857 Suivi et contrôle en temps réel des mouvements du robot

Posté par marcus sur 08 juillet 2021 - 06:43 dans Conseils et aide aux débutants, livres et kits en robotique

Merci pour votre aimable réponse, ce lien est suffisant pour que je puisse étudier pendant un certain temps, merci beaucoup !




#113854 Bonjour les gars

Posté par marcus sur 08 juillet 2021 - 02:48 dans Et si vous vous présentiez?

Oui, j'ai quelques idées et plans pour commencer mon premier projet sur la robotique et je suis nouveau et excité à propos de tout.
J'ai lu plusieurs articles et projets sur la robotique et je pense que je peux essayer de les réaliser tous.
 
 
Mais je ne possède pas encore de vrai robot, et je me demande quel robot ou bras robotique acheter.



#113853 Suivi et contrôle en temps réel des mouvements du robot

Posté par marcus sur 08 juillet 2021 - 02:17 dans Conseils et aide aux débutants, livres et kits en robotique

Comme vous le suggérez, il serait peut-être moins coûteux pour moi d'utiliser mon téléphone pour surveiller ou contrôler le robot ?




#113849 Suivi et contrôle en temps réel des mouvements du robot

Posté par marcus sur 07 juillet 2021 - 10:22 dans Conseils et aide aux débutants, livres et kits en robotique

Oui, je pense que le robot le plus simple est probablement le meilleur pour moi.
  • J'ai Arduino UNO, STM32, ESP8266, ESP32, et beaucoup de composants électroniques de base sont disponibles.
  • Je m'y connais un peu en automatisation, et j'utilise généralement les microcontrôleurs principalement pour réaliser des projets.
  • Je peux utiliser C, C++, python et d'autres langages de programmation courants.

Je devrais peut-être acheter un kit de démarrage pour la robotique ? Le robot peut-il être connecté directement à l'écran via le port série ?




#113847 Suivi et contrôle en temps réel des mouvements du robot

Posté par marcus sur 07 juillet 2021 - 08:27 dans Conseils et aide aux débutants, livres et kits en robotique

Je suis nouveau dans la robotique et je voudrais savoir si le robot peut être surveillé et son comportement contrôlé par LCD. Quel microcontrôleur ou quels composants sont nécessaires ?
À propos, j'aimerais également savoir quels robots sont les meilleurs pour les débutants.



#113846 Projet miniature avec écran transparent

Posté par marcus sur 07 juillet 2021 - 08:22 dans Conseils et aide aux débutants, livres et kits en robotique

Cela a l'air très cool, comme si cela apparaissait dans un film de science-fiction.




#113845 Bonjour les gars

Posté par marcus sur 07 juillet 2021 - 08:16 dans Et si vous vous présentiez?

Bonjour les gars, je m'appelle Marcus, je suis un ingénieur amateur, j'aime faire du bricolage, je suis nouveau dans le domaine de la robotique, j'espère pouvoir apprendre plus ici et partager ce que j'ai appris ici.