Anda di halaman 1dari 12

(http://robologs.

net/)

INICIO (HTTP://ROBOLOGS.NET)

AUTORES (HTTP://ROBOLOGS.NET/AUTORES/)

TUTORIALES (HTTP://ROBOLOGS.NET/TUTORIALES/)

ERES NUEVO? (HTTP://ROBOLOGS.NET/ERES-NUEVO/)

FRIDAY NIGHT PUZZLES (HTTP://ROBOLOGS.NET/FRIDAY-NIGHT-PUZZLES/)

28 (http://robologs.net/2015/10/29/tutorial-de-arduino-bluetooth-y-android-2-crear-una-app-conmit-inventor/#comments)

Tutorial de Arduino, Bluetooth y Android #2 Crear una app


con MIT inventor

CONTACTO (HTTP://ROBOLOGS.NET/CONTACTAR/)

Buscar

BUSCAR

COMENTARIOS RECIENTES

PostedonOctober29,2015(http://robologs.net/2015/10/29/tutorialdearduinobluetoothyandroid2crearuna

cristoonTutorialdeArduinoyderadiofrecuencia

appconmitinventor/)byGl4r3(http://robologs.net/author/676c617265/)

conVirtualWire
(http://robologs.net/2015/02/10/tutorialdearduinoy
deradiofrecuenciaconvirtualwire/#comment1848)
claudioonTutorialdeArduinoyderadiofrecuencia
conVirtualWire
(http://robologs.net/2015/02/10/tutorialdearduinoy
deradiofrecuenciaconvirtualwire/#comment1847)
MiguelonTutorialdeArduinoyMPU6050
(http://robologs.net/2014/10/15/tutorialdearduinoy
mpu6050/#comment1846)
AlexonDeteccindecoloresconOpenCVyPython
(http://robologs.net/2014/07/02/detecciondecolores
conopencvypython/#comment1845)
JonathanonDeteccindecoloresconOpenCVy
Python(http://robologs.net/2014/07/02/deteccionde
coloresconopencvypython/#comment1844)
cristoonTutorialdeArduinoyderadiofrecuencia
conVirtualWire

(http://robologs.net/wpcontent/uploads/2015/10/portada_android2.png)
IralaParte#1(http://robologs.net/2015/10/05/tutorialdearduinobluetoothyandroid1blink/)

(http://robologs.net/2015/02/10/tutorialdearduinoy
deradiofrecuenciaconvirtualwire/#comment1843)
Gl4r3onTutorialdeArduino+controladorde

Buenasatodos!Sihabisseguidolaprimerapartedeltutorial,yasabiscmoenviarrdenesde

motoresDualHBridge

AndroidaArduinoconBluetoothTerminal.Esoestmuybien,peroquosparecerapodercrear

(http://robologs.net/2014/11/14/tutorialdearduino

nuestraspropiasaplicacionesparapoderenviarrdenespulsandobotones?Asnosahorraramos

controladordemotoresdualhbridge/#comment
1842)

detenerqueescribirtodosloscomandosenlaTerminal
EnestaguavamosaprogramarunaaplicacinparaAndroidconMITAppInventor2
(http://ai2.appinventor.mit.edu),unaplicativowebquenospermitirconstruiraplicaciones

NOTIFICACIONES

rpidamentesintenerqueprogramar.ControlaremosunLEDaligualqueeneltutorialanterior,pero
construyndonosunainterfcieamedida.
Yantesdeempezar,lamsicadeldaosvienebienTanhuser
(https://www.youtube.com/watch?v=36g3teFoSM)?

Whoops!Parecequehemostenidounapequea
incidenciaconelsistemadecomentariosarazdela
nuevaactualizacindeWordpress.

Qu es MIT App Inventor?

Ahoradeberaestarresuelto,peronotificadnossi

MITAppInventoresunaaplicacinwebpensadaparadesarrollarAppsparamvilsinprogramar.

Gracias!)

encontrisalgunaincidencia.

Esmuytilparaaprenderaprogramaryparacrearaplicacionessimplesenpocotiempo.
Elprogramaesmuysimple.Haydosventanas:unaenlaquesecreaeldiseodelaaplicacin

SGUENOS EN

(arrastrandoelementosdeunmentalescomobotones,barrasycolocndolosenlapantalladel
mvil)ylasegundaparaprogramarmediantebloques.ConocisScratch(https://scratch.mit.edu/)
oModkit(http://www.modkit.com/)?Pueslaideaesmuyparecida.

(https://twitter.com/robologs)
(https://www.facebook.com/pages/Robologs/472214136223693?
ref=hl)

(https://ello.co/robologs)

SITIOS QUE SEGUIMOS

Cococincia(http://www.cocociencia.cat)Cienciay
tecnologa
ScienceisMadness
(https://www.facebook.com/ScienceIsMadness)
Cienciaengeneral
CafyProzac(https://cafeyprozac.wordpress.com/)
BioqumicayMedicina

ARCHIVOS
(http://robologs.net/wpcontent/uploads/2015/10/ejemplo.png)

SelectMonth

Estesernuestroprogramaconbloques

CATEGORAS

ParautilizarMITAppInventorslohayquetenerunacuentaGoogleyentrarensuweb

SelectCategory

(http://ai2.appinventor.mit.edu).

Empezamos
Aligualqueeneltutorialanterior,necesitamos:
UnaplacaArduino
UnmduloBluetoothHC06
Jumpers,protoboard
CableUSBcompatibleconArduino
TelfonoAndroid
CableUSBcompatibleconeltelfono

Sketch para Arduino


ElprogramaparaArduinoeselmismoqueeneltutorialanterior:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

voidsetup()
{
Serial.begin(9600);//Iniciarelserial
pinMode(13,OUTPUT);//Establecerelpin13comosalida
}

voidloop()
{
if(Serial.available()>=1)
{
charentrada=Serial.read();//Leeruncaracter

if(entrada=='h'orentrada=='H')//Sies'H',encenderelLED
{
digitalWrite(13,HIGH);
Serial.println("LEDencendido");
}

elseif(entrada=='l'orentrada=='L')//Sies'L',apagarelLED
{
digitalWrite(13,LOW);
Serial.println("LEDapagado");
}

elseif(entrada=='i'orentrada=='I')//Sies'I',mostrarunmensajedeayuda
{
Serial.println("Comandos:n(i)abrirestalistan(h)encenderledn(l)apagarledn"
}
}
}

YlasconexionesentreelHC06ylaplaca:

Arduino3.3vHC06VCC
ArduinoGNDHC06GND
ArduinoTXHC06RX
ArduinoRXHC06TX

ArduinoRXHC06TX

Diseo de la aplicacin
AlabrirMITAppInventorporprimeravez,veremosunapginaparecidaaesta:

(http://robologs.net/wpcontent/uploads/2015/10/principal.png)
Aquesdndeaparecentodoslosproyectosenlosqueestamostrabajando.PulsamosStartNew
Projectynospedirunnombreparanuestraaplicacin.LohebautizadocomoRobologs_tutorial.
Lapginaquenosapareceesdndedecidiremoseldiseodelaaplicacin:botones,colores,
mens,imgenes

(http://robologs.net/wpcontent/uploads/2015/10/designer.png)Alaizquierda,enelpanelPalette,
tenemosunapaletaconelementosparaaadiranuestraaplicacin.Haydesdebotonesymensa
navegadores,giroscopiosymdulosBluetooth.
ElespacioquehayenelmedioyquepareceunapantallademvilsellamaVieweryesuna
previsualizacindelaaplicacin.Ahoraestenblanco,peropodemosaadirelementosdelapaleta
arrastrndoloshastalazonaenblanco.
Aladerecha,enelpanelComponents,tenemosunalistacontodosloselementosquehay
colocadosenlapantalla,asesfcilseleccionarlos.DemomentoslohayScreen1,queesla
pantalla.SilaseleccionamosveremosqueasuderechahayunpanelllamadoProperties,dndese
puedencambiartodaslascaractersticasdecadaunodeloselementosdelalista.
EmpezamosporiraPaletteybuscamoselelementoListPicker.Setratademendesplegable,
queprogramaremosparaquemuestrelosdispositivosBluetoothcercanosyseconecteauno.Lo
arrastramoshastalapantalla.

(http://robologs.net/wpcontent/uploads/2015/10/listpicker.png)
Aladerecha,enelmenProperties,podemoscambiareltextodelListPicker.Vamosalcampo
TextyescribimosDispositivos.

(http://robologs.net/wpcontent/uploads/2015/10/dispositivos.png)
VolvemosalmenPaletteyaadimosdoselementosdetipoButtonalaaplicacin,delamisma
formaquehemoscolocadoelListPicker.

(http://robologs.net/wpcontent/uploads/2015/10/botones.png)Seleccionamoscadaunodelos
botonesylescambiamoselnombre.UnolollamaremosEncenderyelotroApagar.
Loquehemosaadidohastaahorasoncomponentesvisibles.Elusuariopuedeverloseinteractuar
conellos.Perohayotrotipodecomponentes,llamadosnonvisiblecomponents,quesirvenpara
activaralgunasfuncionalidadescomoelGiroscopio,laantenaWiFioBluetooth.
ParapoderconectarnosconArduinonecesitamosquenuestraaplicacinpuedausarlaantena
Bluetooth.NosvamosaPalette>ConnectivityyarrastramosBluetoothClientalapantalla.

(http://robologs.net/wpcontent/uploads/2015/10/bluetooth_client2.png)
VeremosquejustodebajodelaprevisualizacinapareceelsmbolodeBluetooth.Laaplicacin
deberaluciras:

(http://robologs.net/wpcontent/uploads/2015/10/aplicacion.png)Bueno,hastaaqueldiseo.Eshora
deconfigurarcadaunodeloscomponentes.Cmolohacemos?Arribaaladerechahaydos
botonesjuntos:DesignyBlocks.Elprimeroabrelaventanaquetenemosahora,laquenos
permitecolocartodosloscomponentesdelaaplicacin.Encambio,Blocksabreunaventanapara
programarlosbloques.

(http://robologs.net/wpcontent/uploads/2015/10/blocks_entrar.png)
PulsamoselbotnBlocksyveremosunapginaenblanco:

(http://robologs.net/wpcontent/uploads/2015/10/pagina_blocks.png)
Loprimeroquevamosahaceresprogramarelmendesplegable.Aladerecha,seleccionamos
ListPicker1ysenosabrirunmenenelqueaparecenlosbloquesrelacionadosconesteobjeto.

(http://robologs.net/wpcontent/uploads/2015/10/listpicker_blocks.png)
Ququeremoshacerexactamente?Debemosdecirlealdesplegabledoscosas:qudebehacer
ANTESdeseleccionarunaopcindeldesplegableyDESPUSdeseleccionaruna.
Antesdeseleccionarunaopcin,queremosqueinicializeunalistaconlosnombresdetodoslos
dispositivosBluetoothquehaycerca.Asquevamosadecirlequesielmviltienelacomunicacin
Bluetoothactivada,ListPicker1establezcalosnombresdelosdispositivoscercanoscomo
elementosdelalista.
DentrodelmendebloquesdeListPicker1arrastramos.BeforePickingalespacioenblanco.

(http://robologs.net/wpcontent/uploads/2015/10/beforepicking1.png)
AhoravamosalapartadoControlyseleccionamoselcondicionalif.

(http://robologs.net/wpcontent/uploads/2015/10/condicional_if.png)
DespusseleccionamoselobjetoBluetoothClient1yaadimosunAdressesAndNamesy
Available:

(http://robologs.net/wpcontent/uploads/2015/10/bluetooth_blocks1.png)
YfinalmenteseleccionamosListPicker1yaadimosunElements:

(http://robologs.net/wpcontent/uploads/2015/10/elements.png)Montamostodoslosbloquespara
quequedenas:

(http://robologs.net/wpcontent/uploads/2015/10/beforepicking_complete.png)Ahoratenemosque
decirleaListPicker1queseconectealadireccinqueelusuarioseleccioneenlalista.Comoyasos
unosexpertosenaadirbloques,sloosenseoelresultadofinal:

(http://robologs.net/wpcontent/uploads/2015/10/afterpicking.png)FinalmenteconfiguramosButton1y
Button2.QueremosquealpulsarlosseenveuntextoaladireccinBluetoothalaqueestamos
conectados

(http://robologs.net/wpcontent/uploads/2015/10/botones_click.png)Losbloquesrojosquehayalfinal
sirvenparaescribirtexto.SeencuentranenelapartadoTextdelmenBlocks.
Alfinal,elprogramadeberaverseas:

(http://robologs.net/wpcontent/uploads/2015/10/finale.png)Horadeexportarelprograma!Arribadel
todo,alaizquierda,hayunmenqueponeBuild.LodesplegamosyseleccionamosApp(save
.apktomycomputer)

(http://robologs.net/wpcontent/uploads/2015/10/build.png)
Guardamoselarchivo.apkylotransferimosanuestromvilatravsdeUSB.Unaveztransferido
utilizamosunaAppcomoFileBrowserparanavegarporlosdirectoriosdenuestromvilhasta
encontrarelarchivo.apkdelaaplicacin,yloinstalamos.NospedirpermisosdeWiFiyBluetooth.
LedamosaAceptar.

AbrimosnuestraApp.PulsamoselbotnDispositivosybuscamosArduino.Ahoraseconectarcon
elmduloHC06.Despus,podremosencenderyapagarelLED13conlosotrosdosbotones.
Enresumen:yaconocemosunaformadeconstruiraplicacionesparacontrolarArduino.Apartirde
aqupodemosircomplicandolasaplicacionesconmsbotonesparaactivarmsluces,barrasde
desplazamientoparacontrolarmotores,etc.
Elprximodaintentaremoshacerunaaplicacinparacontrolarunrobotteledirigido.

Android(http://robologs.net/category/tutoriales/android/),Arduino
(http://robologs.net/category/tutoriales/arduinotutoriales/),Tutoriales(http://robologs.net/category/tutoriales/)
android(http://robologs.net/tag/android2/),arduino(http://robologs.net/tag/arduino/),bluetooth
(http://robologs.net/tag/bluetooth/),glare(http://robologs.net/tag/glare/),mitappinventor
(http://robologs.net/tag/mitappinventor/)

GL4R3

GL4R3
Brillante,luminosaycegadoraaveces,Glareestanartistacomotcnica.
Leencantadarriendasueltaasusmdulosdeimaginacinydesdibujarlos
yadeporsidelgadoslmitesqueseparanelmundodelaelectrnicayel
arte.Sumayorcreacinhastalafechaesuninstrumentocapazde
convertirloscoloresylaluzenmsica.Cundosuscircuitosnoestn
trabajandoenunanuevaobraelectrnica,legustadedicarsusciclosala
lecturaoadocumentarsusinvencionesparabeneficiodeloshumanos.Sus
artilugiosfavoritossonaquellosquecombinanunafuncionalidadprctica
conundiseoeleganteyartstico.
M O R E P O S T S ( H T T P : // R O B O L O G S . N E T/A U T H O R / 6 7 6 C 6 1 7 2 6 5 / )

OUR FRACTAL BRAINS


(HTTP://ROBOLOGS.NET/2015/10/25/OUR-FRACTALBRAINS/)

200 ANIVERSARIO DEL NACIMIENTO DE GEORGE BOOLE


(HTTP://ROBOLOGS.NET/2015/11/02/200OANIVERSARIO-DEL-NACIMIENTO-DE-GEORGE-BOOLE/)

Deja una respuesta


28Comentariosen"TutorialdeArduino,BluetoothyAndroid#2CrearunaappconMITinventor"

Comentar

Ordenarpor:msnuevosprimero|msantiguosprimero

14das14horas

joker
Humano

oyetengounapregunta,quieromantenerconectadoelbluetoothendistintas
pantallasperocuandocambiodepantallasedesconecta,quehagoparaquese
mantengalaconexion?
ResponderCompartir

Gl4r3

Esconderrespuestas

12das20horas

Vaya,pueslosientoperonosabradecirte
(http://robologs.net/author/676c617265/)
(http://robologs.net/author/676c617265/)
cmo
Autor
ResponderCompartir

Larassssss
Humano

1mes2das

ohhhwoowwwwquebuenosssssss

ResponderCompartir

Gl4r3

Esconderrespuestas

1mes1da

Gracias!
(http://robologs.net/author/676c617265/)
(http://robologs.net/author/676c617265/)
Autor
ResponderCompartir

juancho25
Humano

5meses29das

Glarecomolehagoparapoderlograrestomismoconunmodulowifiesp8266
ResponderCompartir

PalomaAngelicaVeloso
Humano

Esconderrespuestas

4meses4das

buenasehbuscadoporcielomarytierray
tampocoloehpodidoencontrarsiencuentras
algodesp8266teagradecerasirespondierasaqiu

SanMartin

ResponderCompartir

6meses8das

jham
Humano

Buenasamigo,heestadotrabajandounpococonestaplataformaaunquesoynuevo
enestoypuesmegustariadesarollarlalaappconlaactivacoindeelbluetootdesde
dentrodelamismayposteriormentelaconexionautomaticaconundispositivo,sipor
favorsabesalgodeesomeayudariasmuchisimo!
Saludosygraciasportuaporte.
ResponderCompartir

Esconderrespuestas

6meses7das

Gl4r3

Entoncestendrsqueusarunentornode
(http://robologs.net/author/676c617265/)
(http://robologs.net/author/676c617265/)
programacindiferente,comoAndroidStudio.
Autor
ResponderCompartir

6meses15das

Ramon
Humano

Hola,noseiluminaelLeddemiArduinoNano.Parecequesiquemeconectodesde
elmvilalmdulobluetoothyaquestedejadeparpadearysequedalaluzfija,pero
encuantoledoyclickalosbotonesdeEncendidoyApagadonoobtengorespuesta.
Quepuedecausaresto?Graciasdeantemano!!
ResponderCompartir

Esconderrespuestas

6meses15das

Gl4r3

HascargadoelsketchdeArduinoconel
(http://robologs.net/author/676c617265/)
(http://robologs.net/author/676c617265/)
mdulobluetoothdesconectado?
Autor
ResponderCompartir

Gl4r3

Esconderrespuestas

6meses15das

TambindeberasrevisarqueelRXTXdel
(http://robologs.net/author/676c617265/)
(http://robologs.net/author/676c617265/)
mdulobluetoothestbienconectadoala
Autor
placa(RXconTXdeArduinoyTXconRX).
ResponderCompartir

Ramon
Humano

6meses15das

Nadadenada,noencuentroquepuedeserLasconexionesdeRTy
RXestnbienhechasyaquelascomunicacionesmediantelos
comandosATmevanperfectamente.MeretornaunOKcuandolepido
AT,meretornaOKlinvorV1.8cuandolepidolaversin,etc,etcHe
probadodecambiarlasalida13porunacualquieraymontaruncircuito
conunLEDaparteperosiguesindarsealesdevida.Loraroesque
todoparecequeestenfuncionamiento,laapprespondebien,elmdulo
bluetoothmantieneelledrojofijocuandomeconectoalParece
comoLeerms
ResponderCompartir

Ramon
Humano

6meses14das

Finalmenteloconsegu,aqumicdigoArduinoporsiaalguienlesirve
deayuda:#include
SoftwareSerialmiPuertoSerie=SoftwareSerial(10,11)intunCharvoid
setup(){miPuertoSerie.begin(9600)//IniciarelserialpinMode(13,
OUTPUT)//Establecerelpin13comosalida}voidloop(){charunChar=
miPuertoSerie.read()if(miPuertoSerie>0){if(unChar==1)//Sies1,
encenderelLED{digitalWrite(13,HIGH)//Serial.println(LED
encendido)}elseif(unChar==0)//Sies0,apagarelLED{
digitalWrite(13,LOW)//Serial.println(LEDapagado)}}}
Elproblemabsicamenteera
queconsiderabalospines10y11comolosdeRXLeerms
ResponderCompartir

6meses16das

Carlos
Humano

Tengounproblema,cuandonavegoentrelasventanasdemiapppierdo
automaticamentelaconexionbluetoothdonelarduino.nosecomolopuedo
solucionar.enlapaginadonderealizoelenlacefuncionaperfecto,alhacerelcambio
pierdolaconexion
ResponderCompartir

Esconderrespuestas

6meses15das

Gl4r3

Pueslosiento,nosabradecirtedndeestel
(http://robologs.net/author/676c617265/)
(http://robologs.net/author/676c617265/)
error.
Autor
ResponderCompartir

6meses22das

Niyu
Humano

Holaexcelentetutorialelmodulobluetootheseste??
http://www.amazon.com/SunFounderWirelessBluetoothTransceiver
Backplane/dp/B00GAXG9A6/ref=sr_1_3?ie=UTF8&qid=1457033807&sr=8
3&keywords=module+bluetooth+hc06+arduino(http://www.amazon.com/SunFounder
WirelessBluetoothTransceiverBackplane/dp/B00GAXG9A6/ref=sr_1_3?
ie=UTF8&qid=1457033807&sr=83&keywords=module+bluetooth+hc06+arduino)
ResponderCompartir

Esconderrespuestas

6meses16das

Gl4r3
S,esestemdulo.
(http://robologs.net/author/676c617265/)
(http://robologs.net/author/676c617265/)
Autor
ResponderCompartir

7meses4das

Jose
Humano

Muybuenaporte.Concisoysencillo,peroconungranpotencialdetrs.
ResponderCompartir

7meses15das

Annimo
Humano

HolaExcelenteexplicacion.Queriapreguntartesisepuedeusarparamodilogps?es
decirsaberlascoordenadasdedondeestaelmoduloarduinoconlaaplicacion
android
ResponderCompartir

Esconderrespuestas

7meses13das

Gl4r3

Supongo.TendrasqueponerunaantenaGPS
(http://robologs.net/author/676c617265/)
(http://robologs.net/author/676c617265/)
alaplacaArduinoyenviarlascoordenadasva
Autor
Bluetoothalmvil.
ResponderCompartir

9meses6horas

TutorialdeArduino,Bluetooth
yAndroid#3Robot

[]IralaParte#1IralaParte#2[]

teledirigidoconMITinventor
robologs

ResponderCompartir

(http://robologs.net/2015/12/26/tutorial
dearduinobluetoothy
android3robotteledirigido
conmitinventor/)
LuisGamez
Humano

9meses12das

BuenosDas,tengounadudaconunproyectodexbeesyunaarduinomega,mi
preguntaessiyopuedocomunicar4xbeesalavezaunamismaplacaarduino.Les
explicotengo2Xbeeproserie1ydosXbeeserie2juntoconunaplacaarduinomega

explicotengo2Xbeeproserie1ydosXbeeserie2juntoconunaplacaarduinomega
yunaplacaMegaSensorShieldV2.1ynecesitocomunicarlasdosparejasdexbees
deformaindependiente,yaqueunaparejadexbeerecibirdatosdelgpsylaotra
recibirdatosdeuncontroldeplaystation3.Hebuscadoporinternetperonoconsigo
informacion,yaquenoLeerms
ResponderCompartir

Esconderrespuestas

9meses9das

Gl4r3

Hmmmpuedestenerproblemaspara
(http://robologs.net/author/676c617265/)
(http://robologs.net/author/676c617265/)
comunicarlosXBeeS1conlosdeS2(creo
Autor
recordarquelosdeS1nosecomunicabanbienconlosdeS2).Perosilo
consigues,notienesquehacernadaenespecialparacomunicarlos4
mdulos,sloenviarunmensajedistintoparacontrolarcadaunodelos
mdulos(porejemplo,siquieresenviarunmensajealmduloA,empiezaslos
mensajesconlaletraA,asestemdulosabequeelmensajevaparal)
ResponderCompartir

9meses12das

Conan
Humano

buenpostmuchasgracias!
ResponderCompartir

10meses27das

aztecxed
Humano

Muybuenoperoycuandoeselprximoda?
(http://aztecxed.wordpress.com)
ResponderCompartir

Esconderrespuestas

10meses27das

admin
(http://www.robologs.net)
(http://robologs.net/author/admin/)
Admin

Supongoquecuandotengatiempodeescribir
ms^^

ResponderCompartir

Esconderrespuestas

admin(http://robologs.net)

10meses27das

Esdecir:mejoresperarsentados
(http://robologs.net/author/admin/)
Admin
ResponderCompartir

admin
(http://www.robologs.net)

10meses27das

EstoPuesesunabuenapregunta

(http://robologs.net/author/admin/)
Admin

ResponderCompartir

RobologsytodosucontenidoestsujetoalalicenciadeCreativeCommonsReconocimiento4.0Internacional(http://creativecommons.org/licenses/by/4.0/),exceptoaqul
material(comofotos,vdeosycdigo)deterceros,queespropiedaddesusrespectivosdueos.
RobologsfuncionaconHiero(http://athemes.com/theme/hiero)deaThemes

Anda mungkin juga menyukai